我有一个正在编写的 Windows 窗体应用程序,我想创建一个 xml 文件并向其中添加数据。
代码如下。
xmlFile = new XDocument(
new XDeclaration("1.0", "utf-8", "yes"),
new XComment("XML File for storing " + RootName));
xmlFile.Add(new XElement(RootName));
// Loop through the list and create a new element for each item in the list
foreach (Contact c in contactsList)
{
try
{
xmlFile.Add(new XElement("Contact",
new XElement("Name", c.Name),
new XElement("Email", c.EmailAddress),
new XElement("Mobile Number", c.MobileNumber),
new XElement("Mobile Carrier", c.sMobileCarrier)
)
);
}
catch
{
MessageBox.Show("ERROR WITH NEW ELEMENTS");
}
}
xmlFile.Save(FileName);
当我运行程序时,try 块抛出错误,并且我收到消息框错误。当我调试时,程序说异常与:
The ' ' character, hexadecimal value 0x20, cannot be included in a name.
我不确定这意味着什么,因为我检查了所有传入的值并一直到入口点,那里有些东西。
我是否缺少xmlFile.Add()
语句中的参数?
最后一个问题,当我在创建 XDocument 对象后插入 Root 元素时,它在文件中显示为<Contacts />
,我想成为结束根标记。
如何插入起始标签,然后在最后保存时,它会附加结束标签?
谢谢
更新--------------------- 感谢 MarcinJuraszek,我能够克服抛出的异常,但现在我得到了这个错误:
This operation would create an incorrectly structured document.
任何想法这意味着什么或导致它的原因是什么?