您的位置:首页 > 编程语言 > C#

c# 生成 xml 文件 (转)

2009-09-04 11:57 447 查看
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}
53

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/jupiter97/archive/2007/05/15/1610176.aspx
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: