C# XML操作教程:插入<book>节点

3星 · 超过75%的资源 需积分: 10 4 下载量 67 浏览量 更新于2024-09-18 收藏 58KB PDF 举报
"C#语言中的XML操作是一个基础但重要的编程技能,特别是在处理数据存储和交换时。本文将介绍一种简单直接的方法,帮助初学者理解如何在C#中读取和修改XML文档。我们将以一个名为`bookstore.xml`的示例文件为例,展示如何向`<bookstore>`节点中插入一个新的`<book>`节点。" 在C#中,我们可以使用`System.Xml`命名空间中的`XmlDocument`类来操作XML文档。首先,我们需要加载XML文件,如下所示: ```csharp XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load("bookstore.xml"); ``` 加载文件后,我们可以使用`SelectSingleNode`方法找到特定的XML节点。在这个例子中,我们查找根节点`<bookstore>`: ```csharp XmlNode root = xmlDoc.SelectSingleNode("bookstore"); ``` 接下来,我们要创建新的`<book>`节点,并设置其属性。使用`CreateElement`方法创建新的XML元素,并通过`SetAttribute`方法设置属性值: ```csharp XmlElement xe1 = xmlDoc.CreateElement("book"); xe1.SetAttribute("genre", "李赞红"); xe1.SetAttribute("ISBN", "2-3631-4"); ``` 然后,我们创建并添加子节点,如`<title>`、`<author>`和`<price>`,并设置它们的文本内容: ```csharp XmlElement xesub1 = xmlDoc.CreateElement("title"); xesub1.InnerText = "CS从入门到精通"; xe1.AppendChild(xesub1); 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); xmlDoc.Save("bookstore.xml"); ``` 执行以上代码后,原始的`bookstore.xml`文件将被更新,新增了一个`<book>`节点。 这种操作方式虽然相对简单,但它展示了C#中处理XML的基本步骤。对于初学者来说,理解这些基本操作是至关重要的,因为它们构成了更复杂XML处理的基础。在实际项目中,我们可能会使用更高级的技术,如LINQ to XML或XML序列化,这些技术可以更高效、更简洁地处理XML。不过,了解基础的`XmlDocument`类操作对于深入学习其他高级技术是非常有帮助的。