我有以下xml:
<?xml version="1.0" encoding="utf-16" standalone="yes"?>
<property_set_list xmlns="myNamespace">
<property_set symbol_id="Config">
</property_set>
</property_set_list>
我想打开它,添加一些属性然后关闭它并编辑添加的属性然后再次保存:
var xws = new XmlWriterSettings { Indent = true, IndentChars = TAB };
using (var reader = ReaderCreator())
using (var output = OutputCreator())
using (var xmlWriter = XmlWriter.Create(output, xws))
{
XDoc = XElement.Load(reader, LoadOptions.None);
Namespace = "myNamespace";
// Append node
AppendToNode("Config", "", MAIN_LOBBY_LIST_CTRL_LOCAL_TABLES_COLOR,
318, 8);
XDoc.Save(xmlWriter);
// Edit added node
SetColors();
// Error here
XDoc.Save(xmlWriter);
}
该属性已添加。然后成功保存。编辑成功。但是我在第二次保存时收到以下错误:
"Token StartDocument in state End Document would result in an invalid XML document."
我可以在这做什么?欢迎任何建议。
答案 0 :(得分:0)
您必须创建另一个XmlWriter
。没有办法重置它,并从底层流的开始再次开始写。