温馨提示×

c# xmldocument如何解析数据

c#
小樊
81
2024-11-22 03:37:51
栏目: 编程语言

在C#中,您可以使用XmlDocument类来解析XML数据。以下是一个简单的示例,说明如何使用XmlDocument解析XML字符串并提取所需的数据:

using System;
using System.Xml;

class Program
{
    static void Main()
    {
        string xmlString = @"
        <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 xmlDoc = new XmlDocument();
        xmlDoc.LoadXml(xmlString);

        // 获取所有书籍节点
        XmlNodeList bookList = xmlDoc.GetElementsByTagName("book");

        foreach (XmlNode bookNode in bookList)
        {
            // 获取书籍的ID属性
            string bookId = bookNode.Attributes["id"].Value;

            // 获取书籍的标题和作者
            string title = bookNode.SelectSingleNode("title").InnerText;
            string author = bookNode.SelectSingleNode("author").InnerText;

            Console.WriteLine($"Book ID: {bookId}");
            Console.WriteLine($"Title: {title}");
            Console.WriteLine($"Author: {author}");
            Console.WriteLine();
        }
    }
}

在这个示例中,我们首先创建了一个包含书籍信息的XML字符串。然后,我们使用XmlDocument类的LoadXml方法加载XML字符串。接下来,我们使用GetElementsByTagName方法获取所有<book>节点,并遍历它们以提取书籍的ID、标题和作者。

注意,SelectSingleNode方法用于从当前节点及其子节点中选择第一个匹配指定XPath表达式的节点。在这个例子中,我们使用titleauthor作为XPath表达式来获取相应的子节点。

0