如何在现有XML文件的末尾添加新节点

本文关键字:新节点 添加 节点 文件 XML | 更新日期: 2023-09-27 17:58:37

如何在现有XML文件的末尾添加新节点?

我知道怎么做,但最后怎么做?

例如,我有以下XML文件,需要在文件末尾添加一个新的节点"条目":

<?xml version="1.0" encoding="utf-8" ?> 
- <entries>
- <entry type="debit">
<amount>100</amount> 
<date>11.11.2010</date> 
- <description>
- <![CDATA[ Описание записи]]> 
</description>
<category>Продукты</category> 
</entry>
- <entry type="credit">
<amount>50</amount> 
<date>11.11.2010</date> 
- <description>
- <![CDATA[ Описание записи]]> 
</description>
<category>Продукты</category> 
</entry>
- <entry type="debit">
<amount>100</amount> 
<date>11.11.2010</date> 
- <description>
- <![CDATA[ Описание записи]]> 
</description>
<category>Продукты</category> 
</entry>
</entries> 

如何在现有XML文件的末尾添加新节点

最简单的方法是将XML加载到内存中,附加子节点,然后再次写出整个文档。例如:

XDocument doc = XDocument.Load("before.xml");
doc.Root.Add(new XElement("extra"));
doc.Save("after.xml");

如果这不是你想要的,请澄清你的问题。

XmlDocument doc = new XmlDocument();
doc.LoadXml("before.xml");
//XmlNode root = doc.DocumentElement;
//Create a new node.
XmlElement elem = doc.CreateElement("entry");
elem.InnerText="";
//Add the node to the document.
//root.AppendChild(elem);
//Console.WriteLine("Display the modified XML...");
doc.LastChild.AppendChild(elem);
doc.Save("before.xml");'