溫馨提示×

c# xpath在哪使用

c#
小樊
96
2024-09-19 19:49:26
欄目: 編程語言

在C#中,要使用XPath來查詢XML文檔,你需要使用System.XmlSystem.Xml.Linq命名空間中的類。以下是兩種方法的示例:

方法1:使用System.Xml命名空間

using System;
using System.Xml;

class Program
{
    static void Main()
    {
        string xml = @"
            <books>
                <book id='1'>
                    <title>Book 1</title>
                    <author>Author 1</author>
                </book>
                <book id='2'>
                    <title>Book 2</title>
                    <author>Author 2</author>
                </book>
            </books>";

        XmlDocument doc = new XmlDocument();
        doc.LoadXml(xml);

        XmlNodeList bookList = doc.SelectNodes("//book");

        foreach (XmlNode book in bookList)
        {
            Console.WriteLine("Book ID: " + book.Attributes["id"].Value);
            Console.WriteLine("Title: " + book.SelectSingleNode("title").InnerText);
            Console.WriteLine("Author: " + book.SelectSingleNode("author").InnerText);
            Console.WriteLine();
        }
    }
}

方法2:使用System.Xml.Linq命名空間

using System;
using System.Linq;
using System.Xml.Linq;

class Program
{
    static void Main()
    {
        string xml = @"
            <books>
                <book id='1'>
                    <title>Book 1</title>
                    <author>Author 1</author>
                </book>
                <book id='2'>
                    <title>Book 2</title>
                    <author>Author 2</author>
                </book>
            </books>";

        XDocument doc = XDocument.Parse(xml);

        var bookList = doc.Descendants("book");

        foreach (var book in bookList)
        {
            Console.WriteLine("Book ID: " + book.Attribute("id").Value);
            Console.WriteLine("Title: " + book.Element("title").Value);
            Console.WriteLine("Author: " + book.Element("author").Value);
            Console.WriteLine();
        }
    }
}

在這兩個示例中,我們首先創建了一個包含書籍信息的XML字符串。然后,我們分別使用XmlDocumentXDocument類加載XML字符串,并使用XPath查詢(//book)來獲取所有書籍節點。最后,我們遍歷查詢結果并輸出書籍的ID、標題和作者。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女