加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 如何使用XmlDocument创建XML文档?

发布时间:2020-12-16 01:20:46 所属栏目:百科 来源:网络整理
导读:如何创建这样的 XML文档? body level1 level2text/level2 level2other text/level2 /level1/body 在C#中使用XmlDocument 解决方法 关于什么: #region Using Statementsusing System;using System.Xml;#endregion class Program { static void Main( string
如何创建这样的 XML文档?

<body>
  <level1>
    <level2>text</level2>
    <level2>other text</level2>
  </level1>
</body>

在C#中使用XmlDocument

解决方法

关于什么:

#region Using Statements
using System;
using System.Xml;
#endregion 

class Program {
    static void Main( string[ ] args ) {
        XmlDocument doc = new XmlDocument( );

        //(1) the xml declaration is recommended,but not mandatory
        XmlDeclaration xmlDeclaration = doc.CreateXmlDeclaration( "1.0","UTF-8",null );
        XmlElement root = doc.DocumentElement;
        doc.InsertBefore( xmlDeclaration,root );

        //(2) string.Empty makes cleaner code
        XmlElement element1 = doc.CreateElement( string.Empty,"body",string.Empty );
        doc.AppendChild( element1 );

        XmlElement element2 = doc.CreateElement( string.Empty,"level1",string.Empty );
        element1.AppendChild( element2 );

        XmlElement element3 = doc.CreateElement( string.Empty,"level2",string.Empty );
        XmlText text1 = doc.CreateTextNode( "text" );
        element3.AppendChild( text1 );
        element2.AppendChild( element3 );

        XmlElement element4 = doc.CreateElement( string.Empty,string.Empty );
        XmlText text2 = doc.CreateTextNode( "other text" );
        element4.AppendChild( text2 );
        element2.AppendChild( element4 );

        doc.Save( "D:document.xml" );
    }
}

(1)Does a valid XML file require an xml declaration?
(2)What is the difference between String.Empty and “” (empty string)?

结果是:

<?xml version="1.0" encoding="UTF-8"?>
<body>
  <level1>
    <level2>text</level2>
    <level2>other text</level2>
  </level1>
</body>

但我建议你使用更简单,更易读的LINQ to XML,如下所示:

#region Using Statements
using System;
using System.Xml.Linq;
#endregion 

class Program {
    static void Main( string[ ] args ) {
        XDocument doc = new XDocument( new XElement( "body",new XElement( "level1",new XElement( "level2","text" ),"other text" ) ) ) );
        doc.Save( "D:document.xml" );
    }
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读