使用表示树的xml文件的最佳方法是什么。 xml大小为70 mb。
答案 0 :(得分:2)
答案取决于您要对XML做什么。一般来说,文件大小你不想一次性阅读。因此,以下页面进行了有趣的读取,提供了一种从文件中挖掘数据而无需将其加载到内存中的方法。它允许您将XmlReader的速度与Linq的灵活性结合起来:
http://msdn.microsoft.com/en-us/library/bb387035.aspx
基于这种技术的相当有趣的文章:
http://blogs.msdn.com/b/xmlteam/archive/2007/03/24/streaming-with-linq-to-xml-part-2.aspx
答案 1 :(得分:2)
Linq to XML是目前使用xml最简单的方法,但这通常会将servire树加载到内存中,在这种情况下,70mb文件可能并不理想。
然而,正如this blog post from Mick Taulty.
答案 2 :(得分:0)
如果您想从大型xml文件中读取数据XmlTextReader
是可行的方法。
答案 3 :(得分:0)
对于.NET 3.5及更高版本,我更倾向于使用LINQ to XML来处理XML文件。
答案 4 :(得分:0)
LinqToXml可能是一个不错的选择,如果你想在内存中查询它,但如果你发现你的内存占用量有多大问题,你可以使用XMLReader
答案 5 :(得分:0)
由于您已经在使用DOM,因此您可以尝试的另一种XML解析器是SAX解析器。 SAX解析器不是将整个树加载到内存中,而是事件驱动的,并在遇到它们时处理节点等。