C#创建简单的xml文件

Muh*_*han 61 c# xml

如何创建一个简单的xml文件并将其存储在我的系统中?

Dar*_*rov 97

你可以使用XDocument:

new XDocument(
    new XElement("root", 
        new XElement("someNode", "someValue")    
    )
)
.Save("foo.xml");
Run Code Online (Sandbox Code Playgroud)

如果您要创建的文件非常大并且无法放入内存,则可以使用XmlWriter.

  • 比使用`XmlDocument`更好,更好,更短,更易读. (3认同)

Ste*_*ger 40

两种方式:您可以使用XMLwriter,也可以使用序列化.

我建议序列化,但如果它很简单,请使用XmlDocument,如下所示:

using System;
using System.Xml;

public class GenerateXml {
    private static void Main() {
        XmlDocument doc = new XmlDocument();
        XmlNode docNode = doc.CreateXmlDeclaration("1.0", "UTF-8", null);
        doc.AppendChild(docNode);

        XmlNode productsNode = doc.CreateElement("products");
        doc.AppendChild(productsNode);

        XmlNode productNode = doc.CreateElement("product");
        XmlAttribute productAttribute = doc.CreateAttribute("id");
        productAttribute.Value = "01";
        productNode.Attributes.Append(productAttribute);
        productsNode.AppendChild(productNode);

        XmlNode nameNode = doc.CreateElement("Name");
        nameNode.AppendChild(doc.CreateTextNode("Java"));
        productNode.AppendChild(nameNode);
        XmlNode priceNode = doc.CreateElement("Price");
        priceNode.AppendChild(doc.CreateTextNode("Free"));
        productNode.AppendChild(priceNode);

        // Create and add another product node.
        productNode = doc.CreateElement("product");
        productAttribute = doc.CreateAttribute("id");
        productAttribute.Value = "02";
        productNode.Attributes.Append(productAttribute);
        productsNode.AppendChild(productNode);
        nameNode = doc.CreateElement("Name");
        nameNode.AppendChild(doc.CreateTextNode("C#"));
        productNode.AppendChild(nameNode);
        priceNode = doc.CreateElement("Price");
        priceNode.AppendChild(doc.CreateTextNode("Free"));
        productNode.AppendChild(priceNode);

        doc.Save(Console.Out);
    }
}
Run Code Online (Sandbox Code Playgroud)

  • 除了两个以外,还有很多方法,XDocument通常比XmlDocument 2.0更受欢迎 (3认同)