如何编写复杂的XML元素或属性字符串

时间:2018-06-04 20:31:16

标签: .net xml vb.net

我正在尝试从Visual Studio(.Net Visual Basic语言)编写一个具有复杂节点的XML文件,但我无法找出正确的语法。

我一直在尝试下面的WriteAttributeString和WriteElementString方法的组合,但我不太熟悉XML生成。

writer.WriteAttributeString("Version", "1.4.1.0")
writer.WriteElementString("xsi", "schemalocation", "http: //www.witsml.org/schemas/1series  ../xsd_schemas/obj_stimJob.xsd")

我已经包含了它应该是什么样子的例子。

<?xml version="1.0" encoding="UTF-8"?>
<stimJobs version="1.4.1.0" 
   xsi:schemalocation="http://www.witsml.org/schemas/1series../xsd_schemas/obj_stimJob.xsd" 
   xmlns="http://www.witsml.org/schemas/1series"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 

1 个答案:

答案 0 :(得分:0)

我想你需要首先理解XML名称空间概念来处理XmlReader。只是为了了解你需要做什么。

Dim xsiNS As String = "http://xxx"
writer.WriteStartElement("stimJobs", "http://yyy")
writer.WriteAttributeString("version", "1.4.1.0")
writer.WriteAttributeString("xmlns", "xsi", Nothing, xsiNS)
writer.WriteAttributeString("schemalocation", xsiNS, "http://zzz")
'Write your content here
writer.WriteStartElement("subelementwithxsi", xsiNS)
writer.WriteEndElement()    '/subelementwithxsi
writer.WriteStartElement("subelementwithrootns")
writer.WriteEndElement()    '/subelementwithrootns
'Close parent element
writer.WriteEndElement()    '/stimJobs