我有一個大型的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