阅读量:106
在C#中,可以使用System.Xml命名空间中的类来处理XML文档。以下是如何在C#中添加和删除XML节点的示例:
首先,创建一个XML文档:
using System.Xml;
string xmlContent = @"
value1
value2
";
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(xmlContent);
添加XML节点
- 创建一个新的
XmlElement对象,并设置其属性和内容。 - 使用
AppendChild方法将新元素添加到现有元素的子节点列表中。
XmlElement newElement = xmlDoc.CreateElement("newElement");
newElement.InnerText = "newValue";
xmlDoc.DocumentElement.AppendChild(newElement);
这将在元素下添加一个名为newElement的新子元素。
删除XML节点
- 使用
SelectSingleNode方法查找要删除的元素。 - 使用
RemoveChild方法删除找到的节点。
XmlNode nodeToDelete = xmlDoc.SelectSingleNode("/root/element1");
if (nodeToDelete != null)
{
xmlDoc.DocumentElement.RemoveChild(nodeToDelete);
}
这将删除元素下的子元素。
完整示例
以下是一个完整的示例,演示了如何在C#中添加和删除XML节点:
using System;
using System.Xml;
class Program
{
static void Main()
{
string xmlContent = @"
value1
value2
";
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(xmlContent);
// 添加新节点
XmlElement newElement = xmlDoc.CreateElement("newElement");
newElement.InnerText = "newValue";
xmlDoc.DocumentElement.AppendChild(newElement);
// 输出更新后的XML
Console.WriteLine("Updated XML:");
xmlDoc.Save(Console.Out);
Console.WriteLine();
// 删除节点
XmlNode nodeToDelete = xmlDoc.SelectSingleNode("/root/element1");
if (nodeToDelete != null)
{
xmlDoc.DocumentElement.RemoveChild(nodeToDelete);
}
// 输出更新后的XML
Console.WriteLine("Updated XML after deletion:");
xmlDoc.Save(Console.Out);
Console.WriteLine();
}
}
运行此程序后,将看到以下输出:
Updated XML:
value1
value2
newValue
Updated XML after deletion:
value2
newValue