c# 生成 xml 文件

方法一:

using System;
using System.Xml;
using System.IO;
using System.Text;

public class ReadWriteXml 
{

    private static void Main() 
    {

        // Create the file and writer.
        FileStream fs = new FileStream("products.xml", FileMode.Create);
        XmlTextWriter w = new XmlTextWriter(fs, Encoding.UTF8);

        // Start the document.
        w.WriteStartDocument();
        w.WriteStartElement("products");

        // Write a product.
        w.WriteStartElement("product");
        w.WriteAttributeString("id", "1001");
        w.WriteElementString("productName", "Gourmet Coffee");
        w.WriteElementString("productPrice", "0.99");
        w.WriteEndElement();

        // Write another product.
        w.WriteStartElement("product");
        w.WriteAttributeString("id", "1002");
        w.WriteElementString("productName", "Blue China Tea Pot");
        w.WriteElementString("productPrice", "102.99");
        w.WriteEndElement();

        // End the document.
        w.WriteEndElement();
        w.WriteEndDocument();
        w.Flush();
        fs.Close();

        Console.WriteLine("Document created. " +
            "Press Enter to read the document.");
        Console.ReadLine();

        fs = new FileStream("products.xml", FileMode.Open);
        XmlTextReader r = new XmlTextReader(fs);

        // Read all nodes.
        while (r.Read()) 
        {
 
            if (r.NodeType == XmlNodeType.Element) 
            {

                Console.WriteLine();
                Console.WriteLine("<" + r.Name + ">");

                if (r.HasAttributes) 
                {

                    for (int i = 0; i < r.AttributeCount; i++) 
                    {
                        Console.WriteLine("/tATTRIBUTE: " +
                            r.GetAttribute(i));
                    }
                }
            }
            else if (r.NodeType == XmlNodeType.Text) 
            {
                Console.WriteLine("/tVALUE: " + r.Value);
            }
        }
        Console.ReadLine();
    }
}
方法二:

 1using System;
 2using System.Xml;
 3
 4public class GenerateXml 
 5{
 6
 7    private static void Main() 
 8    {
 9
10        // Create a new, empty document.
11        XmlDocument doc = new XmlDocument();
12        XmlNode docNode = doc.CreateXmlDeclaration("1.0", "UTF-8", null);
13        doc.AppendChild(docNode);
14
15        // Create and insert a new element.
16        XmlNode productsNode = doc.CreateElement("products");
17        doc.AppendChild(productsNode);
18
19        // Create a nested element (with an attribute).
20        XmlNode productNode = doc.CreateElement("product");
21        XmlAttribute productAttribute = doc.CreateAttribute("id");
22        productAttribute.Value = "1001";
23        productNode.Attributes.Append(productAttribute);
24        productsNode.AppendChild(productNode);
25
26        // Create and add the sub-elements for this product node
27        // (with contained text data).
28        XmlNode nameNode = doc.CreateElement("productName");
29        nameNode.AppendChild(doc.CreateTextNode("Gourmet Coffee"));
30        productNode.AppendChild(nameNode);
31        XmlNode priceNode = doc.CreateElement("productPrice");
32        priceNode.AppendChild(doc.CreateTextNode("0.99"));
33        productNode.AppendChild(priceNode);
34
35        // Create and add another product node.
36        productNode = doc.CreateElement("product");
37        productAttribute = doc.CreateAttribute("id");
38        productAttribute.Value = "1002";
39        productNode.Attributes.Append(productAttribute);
40        productsNode.AppendChild(productNode);
41        nameNode = doc.CreateElement("productName");
42        nameNode.AppendChild(doc.CreateTextNode("Blue China Tea Pot"));
43        productNode.AppendChild(nameNode);
44        priceNode = doc.CreateElement("productPrice");
45        priceNode.AppendChild(doc.CreateTextNode("102.99"));
46        productNode.AppendChild(priceNode);
47
48        // Save the document (to the Console window rather than a file).
49        doc.Save(Console.Out);
50        Console.ReadLine();
51    }
52}
原文地址:https://www.cnblogs.com/flyhigh1860/p/3241433.html