gpt4 book ai didi

c# - 如何使用 C# 替换 XML 文件中的标签名称?

转载 作者:行者123 更新时间:2023-11-30 22:18:21 25 4
gpt4 key购买 nike

我是 XML 的新手,所以这可能是一个简单的问题。我有一个结构如下的 XML 文件。

<root>
<Test>
<EmpID>23</EmpID>
<EmpName>Packman</EmpName>
<EmpAge>33</EmpAge>
</Test>
<Test>
<EmpID>34</EmpID>
<EmpName>James</EmpName>
<EmpAge>13</EmpAge>
</Test>
<Test>
<EmpID>53</EmpID>
<EmpName>Nedved</EmpName>
<EmpAge>52</EmpAge>
</Test>
<root>

我想替换 XML 文件中的一些元素,如下所示

<root>
<Test>
<EmpID name="ID">23</EmpID>
<EmpName name="Nickname">Packman</EmpName>
<EmpAge name = "Age">33</EmpAge>
</Test>
<Test>
<EmpID name="ID">34</EmpID>
<EmpName name="Nickname">James</EmpName>
<EmpAge name = "Age">13</EmpAge>
</Test>
<Test>
<EmpID name="ID">53</EmpID>
<EmpName name="Nickname">Nedved</EmpName>
<EmpAge name = "Age">52</EmpAge>
</Test>
</root>

所以基本上我想更换或添加?元素到属性。

例如)

<EmpID>value</EmpID> to <EmpID name="ID">value</EmpID>

我尝试了一些引用资料,但它们对我不起作用。下面是我试过的那个,但它取代了整行。

XDocument xdoc1 = XDocument.Load("C:\\Test\\Test.xml");
XElement one = xdoc1.Descendants("EmpID").First();
one.ReplaceWith("EmpID name=NickName");
xdoc1.Save("C:\\Test\\Test_Modified.xml");

重点是中心“值(value)”不应该改变。见下文。

<EmpID>value</EmpID> to <EmpID name="ID">value</EmpID>

请给我一些解决办法。

最佳答案

您所要做的就是设置 attribute :

one.SetAttributeValue("name", "ID");

关于c# - 如何使用 C# 替换 XML 文件中的标签名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16162433/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com