0

我们有一个应用程序,所有数据都存储在一个 .xml 文件中。当用户继续工作时,.xml 文件会不断增长,通常会达到 10M KB,有时会增长到 80M KB。有什么办法可以提高 xml 文件的保存/加载性能?

现在,我们正在使用 Micorsoft MSXML.Document 加载 .xml,并使用 XPath 对其进行操作。我在想是否可以将 .xml 转换为二进制文件,那么它可以在加载时节省时间吗?或任何其他建议?谢谢

4

1 回答 1

0

从基于 DOM 的 API(例如Msxml2.DOMDocument使用 MSXML 时)切换到基于流的 API(例如Msxml2.SAXXMLReader)将避免解析整个 XML 文档并将其加载到内存中。它还将避免 DOM 对象图的高度链接特性(所有这些下一个/上一个/第一个子/…链接加起来会产生很大的开销)。

然而,这意味着没有 XPath 和非常不同的编程模型。

于 2013-02-27T09:47:09.033 回答