我需要使用.net文件读取大型xml,该文件的大小很容易达到几GB。
我尝试使用XDocument,但是当我尝试加载文档时,它只会引发System.OutOfMemoryException。
读取大尺寸XML文件最有效的方法是什么?
最佳答案
您基本上必须在这里使用“拉”模型- XmlReader
和 friend 。这样一来,您就可以流式传输文档,而不必一次将其全部加载到内存中。
请注意,如果您知道自己处在“足够小的”元素的开头,则可以创建一个 XElement
from an XmlReader
,使用LINQ to XML的荣耀来处理它,然后移至下一个元素。
关于c# - 在.net中读取大型XML文档,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7671958/