我必须每隔几分钟创建一个备份XML文件,这是当前的代码:
XElement xml = new XElement("Items",
new XElement("Backup",
new XElement("Console", consoleName),
new XElement("Begin", beginTime),
new XElement("End", endTime),
new XElement("Time", totalTime),
new XElement("Price", totalPrice)
xml.Save("Items.xml");
问题是它每次都重新创建XML文件,因此只保存最后一个项目。我错过了什么?感谢。
答案 0 :(得分:4)
将节点附加到现有的.xml文件。
首先,使用空子元素创建Items.xml。
<?xml version="1.0" encoding="utf-8"?>
<Items>
</Items>
接下来,使用此代码加载Items.xml并将节点附加到它。
XElement xml = new XElement("Backup",
new XElement("Console", consoleName),
new XElement("Begin", beginTime),
new XElement("End", endTime),
new XElement("Time", totalTime),
new XElement("Price", totalPrice));
XDocument xdoc = XDocument.Load("Items.xml");
xdoc.Element("Items").Nodes().Last().AddAfterSelf(xml); //append after the last backup element
xdoc.Save("Items.xml");
答案 1 :(得分:1)
我已经尝试过这段代码(在更改变量之后)并且它正常工作:
XElement xml = new XElement("Items",
new XElement("Backup",
new XElement("Console", "aa"),
new XElement("Begin", "bb"),
new XElement("End", "cc"),
new XElement("Time", "dd"),
new XElement("Price", "ee")));
xml.Save(@"C:\Items.xml");