当前位置:  开发笔记 > 编程语言 > 正文

在C#中解析大型XML(大小为1GB)的最佳方法是什么?

如何解决《在C#中解析大型XML(大小为1GB)的最佳方法是什么?》经验,为你挑选了3个好方法。

我有一个1GB的XML文件,想要解析它.如果我使用XML Textreader或XMLDocument,结果很慢,有时会挂起......



1> Spence..:

您必须使用xmlreader实现自定义逻辑.xmlreader在使用之前不会将完整的XML加载到内存中,这意味着您可以从流中读取它并对其进行处理.



2> John Källén..:

XmlDocument在这种情况下是不可行的,因为它会尝试将该千兆字节吸入主内存.我很惊讶你发现XmlTextReader太慢了.你尝试过类似下面的东西吗?

using (XmlTextReader rdr = new XmlTextReader("MyBigFile.txt"))
{
     // use rdr to advance through the document.
}



3> pilif..:

XMLTextreader不应该挂起,因为它是基于流的,只是处理数据块.

如果它挂起,则可能是您在加载文件时出错了.

推荐阅读
coco2冰冰
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有