<?xml version="1.0" encoding="utf-8"?>
<Settings>
  <AccountSettings>
    <AccountSetting>
      <user>
       <user1>
         <user2>
         </user2>
       </user1>
      </user>
    </AccountSetting>
  </AccountSettings>
</Settings>
麻烦提供代码,网上找的都是到二级

解决方案 »

  1.   

    System.Xml.XmlTextWriter tw = new XmlTextWriter("xml.xml", null);
                tw.Formatting = Formatting.Indented;
                tw.WriteStartDocument();
                //
                for (int i = 1; i <= 6; i++)
                {
                    tw.WriteStartElement("Element"+i.ToString());
                    tw.WriteAttributeString("Attribute", "Attribute"+i.ToString());
                }
                tw.WriteEndElement();            tw.WriteEndDocument();
                tw.Flush();
                tw.Close();
    生成的XML文件内容:
    <?xml version="1.0"?>
    <Element1 Attribute="Attribute1">
      <Element2 Attribute="Attribute2">
        <Element3 Attribute="Attribute3">
          <Element4 Attribute="Attribute4">
            <Element5 Attribute="Attribute5">
              <Element6 Attribute="Attribute6" />
            </Element5>
          </Element4>
        </Element3>
      </Element2>
    </Element1>
      

  2.   

    直接发上来xml原来的格式不对了,实际是六级
      

  3.   

    用2楼的做法:WriteStartElement和WriteEndElement就是创建一个新的级别,你试试
      

  4.   

    试了一下二楼的,如果是不规则的是不是就不能用循环了,比如不是用Element1 2 3 4 5 6
    而什么username pwd kak kwisa  kak这样不规则的,只能一条一条写死这样是吧还有就是Element6可不可以是 <Element6 Attribute="Attribute6">  </Element6>这样的形式呢,在没有内容的情况下
      

  5.   

    忘记问了 
    建议用XmlTextWriter还是XmlDocument呢?
      

  6.   

    用 System.Xml.Linq 下的方法很简单:XElement myxml = new XElement("Settings", 
                           new XElement("AccountSettings", 
                                new XElement("AccountSetting",
                                      new XElement("user",
                                           new XElement("user1",
                                                new XElement("user2", "")
                                                       )
                                                  )
                                              )
                                         )
                                   ); 
    Console.WriteLine(myxml.ToString());