C#学习教程:该文档已有一个’DocumentElement’节点分享


该文档已有一个’DocumentElement’节点

我在文件的末尾添加了一个新节点,但是我收到了一个写错误:

该文档已有一个’DocumentElement’节点。

我的代码:

XmlDocument doc = new XmlDocument(); doc.Load(directory); XmlNode refElem = doc.LastChild; // Last node foreach (MoneyEnter myList in list) { XmlElement entryElement = doc.CreateElement("entry"); entryElement.SetAttribute("type", myList.TypeAmount); XmlElement amountElement = doc.CreateElement("amount"); amountElement.InnerText = Convert.ToString(myList.Amount); XmlElement dateElement = doc.CreateElement("date"); dateElement.InnerText = Convert.ToString(myList.Date); XmlElement descriptionElement = doc.CreateElement("description"); XmlCDataSection cdataDescription = doc.CreateCDataSection(myList.Description); descriptionElement.AppendChild(cdataDescription); XmlElement categoryElement = doc.CreateElement("category"); categoryElement.InnerText = myList.Category; entryElement.AppendChild(amountElement); entryElement.AppendChild(dateElement); entryElement.AppendChild(descriptionElement); entryElement.AppendChild(categoryElement); doc.InsertAfter(entryElement, refElem); //add new node in end of file } doc.Save(directory); 

我的XML文件:

    5 01.01.0001 0:00:00 ffvfd fdvfvf   5 01.01.0001 0:00:00 fvfv fvfdvfd   5 01.01.0001 0:00:00 fv gfv dscdcd   5 01.01.0001 0:00:00 vfvfv cfcfc   7 01.01.0001 0:00:00 gfbvgv gfbgfb   

你应该用

 XmlNode refElem = doc.DocumentElement.LastChild; 

 doc.DocumentElement.InsertAfter(entryElement, refElem); 

编辑

你也可以使用

 doc.DocumentElement.AppendChild(entryElement); 

在这种情况下, refElem

上述就是C#学习教程:该文档已有一个’DocumentElement’节点分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—猴子技术宅(www.ssfiction.com)

本文来自网络收集,不代表猴子技术宅立场,如涉及侵权请点击右边联系管理员删除。

如若转载,请注明出处:https://www.ssfiction.com/ckf/960162.html

发表评论

邮箱地址不会被公开。 必填项已用*标注