我试图将节点添加到xml文件。如何将新节点添加到xml文件
XML文件:
<Students>
<Student>
<Address> ... </Address>
<Grade> ... </Grade>
</Student>
...
</Students>
这里是我做了什么:
public XmlElement createNode(XmlDocument xmlDoc)
{
XmlElement trElement = xmlDoc.CreateElement("Descriptions");
XmlElement textElement = xmlDoc.CreateElement("Text");
textElement.SetAttribute("String", "Abcdef");
textElement.SetAttribute("Language", "ENG");
trElement.AppendChild(textElement);
return trElement;
}
public void doWork(string filePath)
{
XmlDocument fromXML;
fromXML = new XmlDocument();
fromXML.Load(filePath);
XmlNode fromRoot = fromXML.DocumentElement;
foreach (XmlNode node in fromRoot.ChildNodes)
{
if (node.ChildNodes[0].Name != "Descriptions")
{
var trElement = createNode(fromXML);
node.InsertBefore(trElement, node.ChildNodes[0]);
}
}
fromXML.Save(Console.Out);
}
上面的代码将在节点Descriptions
添加到每个Student
。如何将节点Descriptions
添加到xml树中更深层的其他节点?当前循环遍历学生,但没有结束,例如:Grade
。
不会嵌套for循环完成这个例子的任务吗? –
你能举个例子吗? – Sam
我想你可能需要在这里递归。 –