C# XML Reader
本文介紹如何使用 C# 的 XML reader 讀取 XML 檔:
考慮一個 XML 檔如下:
我們稱 zoo 是 Root Element
animal 是 Sub-Element of zoo
name 是 Sub-Element of animal
birth 和 ID 是 attribute
bird 是 Text Value of name
7 是 Text Value of age
1. 遍例所有的 Text:
不停地讀,有 Text 就顯示 Value 直到 EOF
using System; using System.Xml; namespace DotNetCoreTest { class Program { private const string _animalList = @"C:\Users\win-7\Desktop\DotNetCoreTest\DotNetCoreTest\Book.xml"; static void Main(string[] args) { using (XmlReader reader = XmlReader.Create(_animalList)) { while (reader.Read()) { if (reader.NodeType == XmlNodeType.Text) { Console.WriteLine(reader.Value); } } } } } }
執行結果如下:
monkey 27 tiger 7 bird 7
2. 遍例所有的 "name" Element:
不停地讀,是 name 的 Element 就顯示其內容直到 EOF
while (reader.Read()) { if (reader.NodeType == XmlNodeType.Element && reader.Name == "name") { Console.WriteLine(reader.ReadElementContentAsString()); } }
3. 遍例所有的 "age" Element:
不停地讀,是 age 的 Element 就用 int 顯示其內容直到 EOF
while (reader.Read()) { if (reader.NodeType == XmlNodeType.Element && reader.Name == "age") { Console.WriteLine(reader.ReadElementContentAsInt()); } }
4. 遍例所有的 attribute:
while (reader.Read()) { if (reader.NodeType == XmlNodeType.Element) { for (int i = 0; i < reader.AttributeCount; ++i) { Console.WriteLine(reader.GetAttribute(i)); } } }
留言
張貼留言