首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将文本文件加载到内存中并分析其内容

将文本文件加载到内存中并分析其内容
EN

Stack Overflow用户
提问于 2013-03-12 19:56:21
回答 2查看 217关注 0票数 0

出于教育目的,我想为PHP编码构建一个IDE。

我制作了一个表单应用程序并添加了OpenFileDialog .(我的c#知识很有用,因为它很容易.即使没有智慧!)

在每种语言(甚至PERL)中,加载文件和从它读取行基本上是相同的。

但我的目标是写自制的智力。我不需要关于richtextBox和它生成的事件,端点,EOF等信息。

我的问题是,如何处理数据?一条接一条?

  • 每一行文本文件的结构?
  • 循环链接列表中的所有结构?
  • 同时更新richtextBox?
  • 搜索开始和结束括号、变量等

我认为Microsoft将SQL类型的数据库存储在应用程序项目文件夹中。但是,如何跟踪变量并以某种形式模拟它们呢?

我想知道如何在动态文本上有效地处理这个问题。

EN

回答 2

Stack Overflow用户

发布于 2013-03-12 20:05:07

从没有想过这一点,这听起来像是一个有趣的挑战。

就我个人而言,我认为您必须实现一个词法扫描器,将整个源文件标记为一个源树,每个令牌还包含有关它的信息,将令牌映射到源文件中的一行/字符。

从这里你可以看到你想走多远--当有人在令牌上徘徊时,它可以使用它周围代码的上下文来更智能地了解你提供的"intellisense“。

悬停在某物上将映射回您的源树,当您正在构建它时,您将装载您想要显示的任何信息。

也许这太过分了,但听起来是个有趣的项目。

票数 1
EN

Stack Overflow用户

发布于 2013-03-12 20:17:31

这听起来与这个问题有关:https://softwareengineering.stackexchange.com/questions/189471/how-do-ide-s-provide-auto-completion-instant-error-checking-and-debugging

这个问题的公认答案推荐了这个链接,我觉得这很有趣:

http://msdn.microsoft.com/en-us/magazine/cc163781.aspx

简而言之,大多数IDE都是从代码生成解析树的,这就是它们存储和管理的内容。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15370888

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档