C#引用system.xml,怎么遍历一个节点的属性,然后删除其中一个属性,举个例子
时间: 2024-05-10 15:17:35 浏览: 111
假设你有以下的XML字符串:
```xml
<books>
<book id="1" author="John Doe" title="The Book" />
<book id="2" author="Jane Smith" title="Another Book" />
</books>
```
你可以使用C#的`XmlDocument`类来操作XML文件,具体操作如下:
```csharp
using System.Xml;
// 解析XML字符串
XmlDocument doc = new XmlDocument();
doc.LoadXml(xmlString);
// 获取所有book节点
XmlNodeList bookNodes = doc.GetElementsByTagName("book");
// 遍历每个book节点
foreach (XmlNode bookNode in bookNodes)
{
// 获取当前节点的id属性
XmlAttribute idAttribute = bookNode.Attributes["id"];
// 如果id属性的值为1,则删除该属性
if (idAttribute.Value == "1")
{
bookNode.Attributes.Remove(idAttribute);
}
}
// 输出修改后的XML字符串
string modifiedXmlString = doc.OuterXml;
Console.WriteLine(modifiedXmlString);
```
在上面的代码中,我们首先使用`XmlDocument`类解析XML字符串,然后获取所有的`book`节点。接着,我们遍历每个`book`节点,并获取其`id`属性。如果`id`属性的值为1,则删除该属性。最后,输出修改后的XML字符串。
阅读全文