<?xml version="1.0" encoding="utf-8" ?> 
- <NewDataSet>
- <ChapDescri>
  <id>1</id> 
  <username>admin</username> 
  <userpass>admin</userpass> 
  </ChapDescri>
- <ChapDescri>
  <id>2</id> 
  <username>ajian</username> 
  <userpass>123456</userpass> 
  </ChapDescri>
- <ChapDescri>
  <id>3</id> 
  <username>woshizhu</username> 
  <userpass>ok</userpass> 
  </ChapDescri>
- <Table>
  <id>1</id> 
  <username>admin</username> 
  <userpass>admin</userpass> 
  </Table>
- <Table>
  <id>2</id> 
  <username>ajian</username> 
  <userpass>123456</userpass> 
  </Table>
- <Table>
  <id>3</id> 
  <username>woshizhu</username> 
  <userpass>ok</userpass> 
  </Table>
  </NewDataSet>如何用XmlDocument手动生成这个xml文件.

解决方案 »

  1.   

    winform可以用xmltextwriter的对象方法来写
      

  2.   

    如果楼主只要想生成XML文档,采用XmlDocument的方式的效率远不如XmlReader和XmlWriter
    不过楼主既然需要,给你一个demoXmlDocument doc=new XmlDocument();
            XmlNode root=doc.CreateNode(XmlNodeType.XmlDeclaration,"","");
            doc.AppendChild(root);
            
            XmlNode newNode1=doc.CreateNode(XmlNodeType.Element,"NewDataSet",null);
            XmlNode newNode2=doc.CreateNode(XmlNodeType.Element,"ChapDescri",null);
            XmlNode newNode3=doc.CreateNode(XmlNodeType.Element,"id",null);
            XmlNode txtNode1 = doc.CreateTextNode("1");
            newNode3.AppendChild(txtNode1);
            newNode3.LastChild.Value = "1";
            XmlNode newNode4=doc.CreateNode(XmlNodeType.Element,"username",null);
            XmlNode txtNode2 = doc.CreateTextNode("admin");
            newNode4.AppendChild(txtNode2);
            XmlNode newNode5=doc.CreateNode(XmlNodeType.Element,"userpass",null);
            XmlNode txtNode3 = doc.CreateTextNode("admin");
            newNode5.AppendChild(txtNode3);
            newNode2.AppendChild(newNode3);
            newNode2.AppendChild(newNode4);
            newNode2.AppendChild(newNode5);
            newNode1.AppendChild(newNode2);
            
            doc.AppendChild(newNode1);        doc.Save("d:\\test.xml");
      

  3.   

    如果你的信息固定,有一种简单的方式.建议楼上先看看XML基础        XmlDocument doc = new XmlDocument();
            doc.LoadXml("<?xml   version=\"1.0\"   encoding=\"utf-8\"   ?>" +
       "<NewDataSet> " +
       "<ChapDescri> " +
        "<id> 1 </id> " +
        "<username> admin </username> " +
        "<userpass> admin </userpass>" +
        "</ChapDescri> " +
        "<ChapDescri>" +
        "<id> 2 </id> " +
        "<username> ajian </username> " +
        "<userpass> 123456 </userpass> " +
        "</ChapDescri> " +
       "<ChapDescri> " +
        "<id> 3 </id> " +
        "<username> woshizhu </username> " +
        "<userpass> ok </userpass>" +
        "</ChapDescri> " +
        "<Table> " +
        "<id> 1 </id> " +
        "<username> admin </username> " +
        "<userpass> admin </userpass> " +
        "</Table> " +
        "<Table> " +
        "<id> 2 </id> " +
        "<username> ajian </username>" +
        "<userpass> 123456 </userpass> " +
        "</Table>" +
        "<Table> " +
        "<id> 3 </id> " +
        "<username> woshizhu </username>" +
        "<userpass> ok </userpass> " +
        "</Table> " +
        "</NewDataSet> ");
            doc.Save("d:\\test.xml");    }