C# 操作 xml(xmlroot ,xmlattribute,xmlelement)
时间: 2023-12-12 08:04:05 浏览: 54
C#中可以通过XmlDocument类来操作XML文件,其中XmlRoot、XmlAttribute和XmlElement是XML文件中的三种常见节点类型。
1. XmlRoot:表示XML文件的根节点,通过XmlRootAttribute可以给根节点指定名称和命名空间。
2. XmlAttribute:表示XML文件中的属性节点,通过XmlAttribute类可以获取或设置属性的值。
3. XmlElement:表示XML文件中的元素节点,通过XmlElement类可以获取或设置元素的值。
下面是一个使用XmlDocument类操作XML文件的示例:
```
// 加载XML文件
XmlDocument doc = new XmlDocument();
doc.Load("test.xml");
// 获取根节点
XmlNode root = doc.DocumentElement;
// 获取指定元素节点
XmlNodeList nodes = root.SelectNodes("//book");
// 获取元素节点的属性值
foreach (XmlNode node in nodes)
{
XmlAttribute attr = node.Attributes["id"];
if (attr != null)
{
Console.WriteLine("Book ID: " + attr.Value);
}
}
// 获取元素节点的值
XmlNode titleNode = nodes[0].SelectSingleNode("title");
if (titleNode != null)
{
Console.WriteLine("Book Title: " + titleNode.InnerText);
}
// 创建新的元素节点
XmlElement newElement = doc.CreateElement("book");
XmlAttribute newAttr = doc.CreateAttribute("id");
newAttr.Value = "3";
newElement.Attributes.Append(newAttr);
newElement.InnerText = "C# Programming";
root.AppendChild(newElement);
// 保存XML文件
doc.Save("test.xml");
```
上述代码中,我们通过XmlDocument类加载了一个名为test.xml的XML文件,并获取了根节点和指定的元素节点。然后,我们通过XmlAttribute和XmlElement类获取了元素节点的属性值和节点值,并创建了一个新的元素节点,并将其添加到根节点中。最后,我们通过Save方法将修改后的XML文件保存到磁盘中。