C#XDocument保存副本文件并将编辑后的附件添加到末尾
当我试图编辑XML元素并保存它时,它会生成副本(使用已编辑的元素)并将其附加到文件的末尾C#XDocument保存副本文件并将编辑后的附件添加到末尾,c#,xml,linq-to-xml,C#,Xml,Linq To Xml,当我试图编辑XML元素并保存它时,它会生成副本(使用已编辑的元素)并将其附加到文件的末尾 var localStore = IsolatedStorageFile.GetUserStoreForApplication(); IsolatedStorageFileStream stream = new IsolatedStorageFileStream("DataFolder\\PlayerData.xml", FileMode.OpenOrCreate, FileAccess.ReadWrit
var localStore = IsolatedStorageFile.GetUserStoreForApplication();
IsolatedStorageFileStream stream = new IsolatedStorageFileStream("DataFolder\\PlayerData.xml", FileMode.OpenOrCreate, FileAccess.ReadWrite, localStore);
var doc = XDocument.Load(stream);
doc.Root.Element("characters").Element("character").SetElementValue("expierence", 10);
doc.Save(stream, SaveOptions.None);
stream.Close();
输出文件示例:
<?xml version="1.0" encoding="utf-8"?>
<root>
<characters>
<character>
<expierence>0</expierence>
</character>
</characters>
</root><?xml version="1.0" encoding="utf-8"?>
<root>
<characters>
<character>
<expierence>10</expierence>
</character>
</characters>
</root>
0
10
这正是您通过传递FileMode.open或create
如果要截断任何现有文件,请传递
Create
有关详细信息,请参阅。当我将其更改为“创建”时,它将创建空文档。@user2948474:你说得对;我没注意到你也在看。在保存之前调用
SetLength(0)
。