Delphi中对于非常大的文档,可以使用最快的XML处理

前端之家收集整理的这篇文章主要介绍了Delphi中对于非常大的文档,可以使用最快的XML处理前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要建议在Delphi中使用什么(我使用Delphi 2009)来尽可能快地处理非常大的 XML文件(例如100 MB).

我需要输入XML,从我的程序中访问和更新其中的数据,然后再次导出修改后的XML.

希望输入和输出可以在快速Windows机器上在几秒钟内完成.

澄清.我希望我需要使用DOM,因为访问数据结构以开发报告和更新数据非常重要,我需要这个功能非常快.

输入仅对文件加载执行一次,输出仅为文件保存完成,通常在退出时只执行一次.这些也应该很快,但不如内存中数据访问和更新那么重要.

我的理解是第三方解析器只能帮助输入和输出,而不是一旦加载到内存中就使用和修改数据.或者我错了?

解决方法

如果我正确理解了您的问题,您就知道数据结构,并且您正在修改数据 – 而不是文件的XML结构.

在这些条件下,如果性能至关重要,那么您可以尝试使用直接文本操作 – 跳过XML解析.

从流中读取,使用一些快速文本搜索算法,例如Boyer-Moore,找到需要修改数据的地方,进行修改并将数据输出到另一个流中.

这将是一次通过,没有XML解析,没有内存中的XML树构建.

猜你在找的Delphi相关文章