2011-07-18 55 views
1

我只想一次只加載一個節點到內存中,而不是加載整個XML文檔。請幫我找到這個。我有這樣的xml文件.. <Report><Data><Row>..</Row><Row>..</Row><Row>..</Row>我怎樣才能一次解析一個節點?

在這裏我得到像這樣的數百萬行,因此我需要一次只加載一行到內存中。有沒有.Net類可用?在此先感謝

回答

3

XMLReader

表示一個閱讀器,能快速,非緩存,只進到XML數據訪問。

+0

嗨jeff.thanks ...我新來的XML。你能告訴我如何使用xmlreader類加載一個節點嗎? – Gowtham

+0

http://msdn.microsoft.com/en-us/library/cc189056(VS.95).aspx上的代碼示例是否有幫助? –

0

嗯,我喜歡LINQ to XML,我真討厭解析XML,但LINQ使它更容易。問題是大文檔會吃內存,因爲整個XML將被加載到內存中。

這個post顯示瞭如何使用LINQ to XML和XMLReader,因此您可以輕鬆使用LINQ to SQL,但是可以輕鬆使用XMLReader的內存效率。