C++ Programmer's Cookbook

{C++ 基础} {C++ 高级} {C#界面,C++核心算法} {设计模式} {C#基础}

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

posted on 2006-03-23 17:26 梦在天涯 阅读(1885) 评论(0)  编辑 收藏 引用 所属分类: C#/.NET


只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


公告

EMail:itech001#126.com

导航

统计

  • 随笔 - 461
  • 文章 - 4
  • 评论 - 746
  • 引用 - 0

常用链接

随笔分类

随笔档案

收藏夹

Blogs

c#(csharp)

C++(cpp)

Enlish

Forums(bbs)

My self

Often go

Useful Webs

Xml/Uml/html

搜索

  •  

积分与排名

  • 积分 - 1747792
  • 排名 - 5

最新评论

阅读排行榜