C#编程:解析与操作XML文件教程

需积分: 10 3 下载量 29 浏览量 更新于2024-09-14 收藏 36KB DOC 举报
"这篇文档是关于C#操作XML文件的基础教程,主要讲解如何在C#中插入XML节点。" 在C#编程中,XML(可扩展标记语言)是一种常用的数据存储和交换格式,广泛应用于数据序列化、配置文件以及网络通信等领域。本教程将引导初学者了解如何使用C#来读取、操作和保存XML文件。 首先,我们需要导入System.Xml命名空间,它包含了处理XML文档所需的类。以下代码展示了如何加载一个名为"bookstore.xml"的XML文件: ```csharp using System.Xml; // 创建一个XmlDocument对象来加载XML文件 XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load("bookstore.xml"); ``` 在加载XML文件后,我们可以使用XPath查询语言来选择特定的节点。例如,要获取根节点`<bookstore>`,可以使用以下代码: ```csharp XmlNode root = xmlDoc.SelectSingleNode("bookstore"); ``` 接下来,我们创建新的XML节点。在这个例子中,我们要在`<bookstore>`节点下插入一个新的`<book>`节点: ```csharp XmlElement xe1 = xmlDoc.CreateElement("book"); // 创建<book>节点 xe1.SetAttribute("genre", "李赞红"); // 设置genre属性 xe1.SetAttribute("ISBN", "2-3631-4"); // 设置ISBN属性 ``` 然后,我们为`<book>`节点添加子节点,如`<title>`、`<author>`和`<price>`: ```csharp XmlElement xesub1 = xmlDoc.CreateElement("title"); xesub1.InnerText = "CS从入门到精通"; // 设置文本内容 xe1.AppendChild(xesub1); // 添加到<book>节点 XmlElement xesub2 = xmlDoc.CreateElement("author"); xesub2.InnerText = "候捷"; xe1.AppendChild(xesub2); XmlElement xesub3 = xmlDoc.CreateElement("price"); xesub3.InnerText = "58.3"; xe1.AppendChild(xesub3); ``` 最后,将新建的`<book>`节点添加到`<bookstore>`中,并保存修改后的XML文件: ```csharp root.AppendChild(xe1); // 添加到<bookstore>节点中 xmlDoc.Save("bookstore.xml"); ``` 执行以上代码后,原始的"bookstore.xml"文件会被更新,添加新的`<book>`节点。这是C#中基本的XML操作,包括读取、创建、修改和保存XML文件。对于更复杂的操作,如遍历XML树、验证XML文档结构等,可以使用其他类如XmlNode、XmlNodeList、XmlReader和XmlWriter等。学习C#操作XML是提升程序处理结构化数据能力的重要步骤。