我有一个大型的100MB左右的XML文档。我需要在这个文档中找到两个标签的属性。我可以通过使用类似的代码如下做到这一点:在大型XML文档中查找特定属性
XmlDocument xmlDocument = new XmlDocument ();
xmlDocument.Load ("C:\\myxml.xml");
XmlNode node1 = xmlDocument.SelectSingleNode ("/data/objects[@type='data type 1']");
if (null != node1)
{
result = node1 [ "Version" ].Value;
}
但这样做加载整个XML到内存中,这似乎需要大约200MB。无论如何,我可以让这个更有效率吗?
编辑:使用XmlTextReader,我写我的代码现在使用很多很好的答案。 (它会更有记忆效率,但很难看:)。
我可以发表你的基础的XmlReader-例子,但我需要知道你正在使用的.NET版本。 – TToni 2010-12-15 13:09:17
我正在使用.Net 3.5 – Kyle 2010-12-15 13:17:27