C#如何创建自定义xml文档

本文关键字:自定义 xml 文档 创建 何创建 | 更新日期: 2023-09-27 18:29:15

我实际上只是想创建一个用于简单配置处理的自定义xml文档。

        XmlDocument xDoc = new XmlDocument();
        string[] NodeArray = { "Fruits|Fruit", "Vegetables|Veggie"};
        foreach (string node in NodeArray)
        {
            XmlNode xmlNode = xDoc.CreateNode(XmlNodeType.Element,node.Split('|')[0],null);
            //xmlNode.Value = node.Split('|')[0];
            xmlNode.InnerText = node.Split('|')[1];
            xDoc.DocumentElement.AppendChild(xmlNode);
        }

我想得到的是这个。

<?xml version="1.0" encoding="ISO-8859-1"?>
<Fruits>Fruit</Fruits>
<Vegetables>Veggie</Vegetables>

我没有设置为xDoc.DocumentElement.AppendChild(xmlNode); 处对象的值

C#如何创建自定义xml文档

不幸的是,您无法创建XML结构。

所有XML文档都必须有一个根节点。你不能再多了。

试试这个

XmlDocument xDoc = new XmlDocument();
xDoc.AppendChild( xDoc.CreateElement("root"));
string[] NodeArray = { "Fruits|Fruit", "Vegetables|Veggie" };
foreach (string node in NodeArray)
{
    XmlNode xmlNode = xDoc.CreateNode(XmlNodeType.Element, node.Split('|')[0], null);
    //xmlNode.Value = node.Split('|')[0];
    xmlNode.InnerText = node.Split('|')[1];
    xDoc.DocumentElement.AppendChild(xmlNode);
}

不可能有这样的XML结构,因为XML必须有一个根元素。你可能想试试:

<?xml version="1.0" encoding="ISO-8859-1"?>
<items>
  <Fruits>Fruit</Fruits>
  <Vegetables>Veggie</Vegetables>
</items>