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

时间:2013-08-27 14:36:53

标签: c# xml

我真的只是想为简单的配置处理创建一个自定义的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);

处对象的值

2 个答案:

答案 0 :(得分:0)

不幸的是,你无法建立这种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);

}

答案 1 :(得分:0)

不可能拥有XML结构,因为XML必须只有一个根元素。您可以尝试:

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