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));
        }
    }
}
 
留言
張貼留言