使用 XmlNodeReader 讀取節點樹狀結構
XmlNodeReader 可透過給定的 XML 文件物件模型 (DOM) 節點子樹狀結構提供讀取器。它讀取並傳回子數狀圖上的節點,其中包含實體參考節點。
XmlNodeReader 提供下列功能:
強制實行 XML 語式正確規則。
擴充預設屬性和實體,前提是文件類型定義 (DTD) 資訊必須位於 XmlDocument 中。如需取得預設屬性資訊的詳細資訊,請參閱 System.Xml.XmlNodeReader.IsDefault 屬性。
![]() |
---|
在 Microsoft .NET Framework 2.0 版本 中,建議您使用 XmlReaderSettings 類別與 Create 方法來建立 XmlReader 執行個體。如此可讓您充分利用 .NET Framework 所推出的所有新功能。如需詳細資訊,請參閱建立 XML 讀取器。 |
範例
若要從 XmlDocument 建立 XmlNodeReader:
Dim doc As New XmlDocument()
doc.Load("MyXml.xml")
Dim nodereader As New XmlNodeReader(doc)
While nodereader.Read()
' Read the XmlDocument as a stream of XML.
End While
XmlDocument doc = new XmlDocument();
doc.Load("MyXml.xml");
XmlNodeReader nodereader = new XmlNodeReader (doc);
while (nodereader.Read()) {
// Read the XmlDocument as a stream of XML.
}
XmlNodeReader 也可以透過 XmlDocument 內的任何 XmlNode 予以建構。
下列範例使用 SelectSingleNode 方法和 XPath 運算式移至 XmlDocument 中的特定節點上。接著,它會在該位置上建立 XmlNodeReader。XML 輸入檔案 test.xml 包含下列資料:
<root>
<child>
Child Text
</child>
</root>
Imports System
Imports System.Xml
Public Class Test
Public Shared Sub Main()
Dim doc As New XmlDocument()
doc.Load("test.xml")
Dim child As XmlNode = doc.SelectSingleNode("/root/child")
If Not (child Is Nothing) Then
Dim nr As New XmlNodeReader(child)
While nr.Read()
Console.WriteLine(nr.Value)
End While
End If
End Sub 'Main
End Class 'Test
using System;
using System.Xml;
public class Test {
public static void Main() {
XmlDocument doc = new XmlDocument();
doc.Load("test.xml");
XmlNode child = doc.SelectSingleNode("/root/child");
if (child != null) {
XmlNodeReader nr = new XmlNodeReader(child );
while (nr.Read() )
Console.WriteLine( nr.Value );
}
}
}