我正在使用dblp XML文件。我实际上想分析dblp.xml文件,并希望提取有用的信息,以便在某个项目中进一步处理。这个XML文件非常大(1.1 GB),我甚至无法打开这个文件。如何解析C#中非常庞大的XML文件?
请指引我,如果你有dblp.xml C#语法分析器或者你可以指导我对此,或者我们如何能够解析巨大的XML文件。
我正在使用dblp XML文件。我实际上想分析dblp.xml文件,并希望提取有用的信息,以便在某个项目中进一步处理。这个XML文件非常大(1.1 GB),我甚至无法打开这个文件。如何解析C#中非常庞大的XML文件?
请指引我,如果你有dblp.xml C#语法分析器或者你可以指导我对此,或者我们如何能够解析巨大的XML文件。
使用XML阅读器而不是XML DOM。 XML DOM存储在内存中的整个文件是完全无用的:
http://msdn.microsoft.com/en-us/library/system.xml.xmlreader.aspx
您需要使用XmlReader
它代表了阅读器,能快速,非缓存,只进到XML
数据访问。 不会将所有数据加载到内存,应该与大量数据一起使用。其他内置的.NET
解决方案保留完整生成的对象图。
XML解析已被讨论_as SOauseam_。这里有一个这样的讨论,可以启发你:http://stackoverflow.com/questions/55828/how-does-one-parse-xml-files – joce
请参阅XStreamingElement在http://msdn.microsoft.com/en-us/ library/system.xml.linq.xstreamingelement.aspx。 –
Ryan Gates - > XML格式的OSM文件。这可能是理由。 – Kostadin