使用C#在特定节点之前插入XML节点

7
这是我的 XML 文件。
<employee>
  <name ref="a1" type="xxx"></name>
  <name ref="a2" type="yyy"></name>
  <name ref="a3" type="zzz"></name>
</employee>

使用C#,我需要插入此节点。
<name ref="b2" type="aaa"></name>

在“a2”和“a3”节点之间。有什么指针可以解决这个问题吗?

你是使用XmlDocument还是Linq 2 Xml(XDocument)? - Julius A
1个回答

10

使用insertAfter方法:

XmlDocument xDoc = new XmlDocument();
xDoc.Load(yourFile);
XmlNode xElt = xDoc.SelectSingleNode("//name[@ref=\"a2\"]");
XmlElement xNewChild = xDoc.CreateElement("name");
xNewChild.SetAttribute("ref", "b2");
xNewChild.SetAttribute("type", "aaa");
xDoc.DocumentElement.InsertAfter(xNewChild, xElt);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接