如何使用C#向xml节点添加新的计数器属性

本文关键字:计数器 属性 添加 节点 何使用 xml | 更新日期: 2023-09-27 17:58:48

我正在研究如何向xml节点添加一个新属性count,以便将其作为id进行进一步解析。

我的XML:

<objects>
    <object name="Ford Fuigo" type="Car">
          <properties>
           ...      
           </properties>
    </object>
    <object name="Renault Clio" type="Car">
          <properties>
           ...      
           </properties>
    </object>
    <object name="Evico Star" type="Bus">
          <properties>
           ...      
           </properties>
    </object>
</objects>

我想要一个新的属性,像这样:

<objects>
    <object count ="1" name="Ford Fuigo" type="Car">
          <properties>
           ...      
           </properties>
    </object>
    <object count ="2" name="Renault Clio" type="Car">
          <properties>
           ...      
           </properties>
    </object>
    <object count ="3" name="Evico Star" type="Bus">
          <properties>
           ...      
           </properties>
    </object>
</objects>

如何使用C#向xml节点添加新的计数器属性

基于XML创建XmlDocument,然后使用SelectSingleNode查找节点并将其更改为

http://msdn.microsoft.com/en-us/library/fb63z0tw.aspx

您也可以使用XElement,如下所示:

XElement root = XElement.Load("input.xml");
int counter = 0;
foreach (var obj in root.Descendants("object"))
{
    obj.Add(new XAttribute("count", ++counter));
}
root.Save("output.xml");