分享

VB.Net创建XML文件的方法

 zcnudt的图书馆 2013-10-26

 下面所写方法是在网络资料的基础上,经过自己的实验而得出的。

 

使用VB.Net创建XML文件有两种方法,下面逐一介绍:

假设要创建如下的XML文件:

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <root>
  3.     <Header>
  4.         <row>
  5.             <CRRNum/>
  6.             <RequestedBy/>
  7.             <CustomerNum/>
  8.         </row>
  9.     </Header>
  10.     <Details>
  11.         <row>
  12.             <ItemCode />
  13.             <ItemName />
  14.             <SerialNum />
  15.             <Warehouse />
  16.             </row>
  17.     </Details>
  18. </root>

方法1:

首先声明一个XmlDocument对象:

  1. Dim xmlReport As XmlDocument
  2. xmlReport New XmlDocument

 

其次通过XmlDocument.LoadXML来获得这个XML的初始结构,包括:Version,Encoding和根节点:

  1. xmlReport.LoadXML("<?xml version=""1.0"" encoding=""UTF-8""?><root/>")

 

这样xmlReport就获得了初始结构了。剩下的工作就是要声明XmlNode对象,逐级的使用XmlNode.AppendChild方法将各个节点串接起来,具体的程序如下:

  1. Dim xmlNode As XmlNode
  2. Dim xmlHeader As XmlNode
  3. Dim xmlDetail As XmlNode
  4. Dim xmlRow As XmlNode
  5. xmlHeader xmlReport.CreateNode(XmlNodeType.Element, "Header", "")
  6. xmlRow xmlReport.CreateNode(XmlNodeType.Element, "row", "")
  7. xmlNode xmlReport.createElement_x("CRRNum")
  8. xmlRow.AppendChild(xmlNode)
  9. xmlNode xmlReport.createElement_x("RequestedBy")
  10. xmlRow.AppendChild(xmlNode)
  11. xmlNode xmlReport.createElement_x("CustomerNum")
  12. xmlRow.AppendChild(xmlNode)
  13. xmlHeader.AppendChild(xmlRow)
  14. xmlRoot.AppendChild(xmlHeader)
  15. xmlDetail xmlReport.CreateNode(XmlNodeType.Element, "Details", "")
  16. xmlRow xmlReport.CreateNode(XmlNodeType.Element, "row", "")
  17. xmlNode xmlReport.createElement_x("ItemCode")
  18. xmlRow.AppendChild(xmlNode)
  19. xmlNode xmlReport.createElement_x("ItemName")
  20. xmlRow.AppendChild(xmlNode)
  21. xmlNode xmlReport.createElement_x("SerialNum")
  22. xmlRow.AppendChild(xmlNode)
  23. xmlDetail.AppendChild(xmlRow)
  24. xmlRoot.AppendChild(xmlDetail)
  25. xmlReport.AppendChild(xmlRoot)

方法2:

与方法一的主要区别就是,完全使用XML命名空间中的对象来创建,我本人更倾向于这种方法。

首先,声明一个XmlDocument对象,同方法一。

其次,声明一个XmlDeclaration对象:

  1. Dim XmlDeclaration As XmlDeclaration

初始化这个XmlDeclaration对象:

  1. XmlDeclaration xmlReport.CreateXmlDeclaration("1.0", "", "")
  2. XmlDeclaration.Encoding "UTF-8"

剩下的操作同样是创建XmlNode,方法同方法一。但是此时这个XML是没有跟节点的,因此还需要一个额外的XMLNode对象,来充当根节点的角色。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多