使用XElement解析XML
我对使用VB.NET解析XML非常陌生。我有一些这种格式的XML(简化视图) 我试图使用XElement来解析这个,但是不确定如何继续。我试着使用使用XElement解析XML,xml,vb.net,xelement,Xml,Vb.net,Xelement,我对使用VB.NET解析XML非常陌生。我有一些这种格式的XML(简化视图) 我试图使用XElement来解析这个,但是不确定如何继续。我试着使用.subjections(“Range”)进行迭代,它确实给出了数字,但我无法区分from和to 任何帮助都将不胜感激 谢谢好的,我想我找到了一个方法,虽然它不干净 我创建了两个枚举数,一个用于子体(“from”),另一个用于描述体(“to”) 然后,在循环中,我可以轻松地构造字符串 类似于这样的内容(键入内存,语法可能不完整,txt是整个XML的XE
.subjections(“Range”)
进行迭代,它确实给出了数字,但我无法区分from和to
任何帮助都将不胜感激
谢谢好的,我想我找到了一个方法,虽然它不干净 我创建了两个枚举数,一个用于
子体(“from”)
,另一个用于描述体(“to”)
然后,在循环中,我可以轻松地构造字符串
类似于这样的内容(键入内存,语法可能不完整,txt是整个XML的XElement对象)
Dim p as IEnumerable(of Xelement)=txt.substands(“from”)
Dim q作为IEnumerable(of Xelement)=txt.substands(“to”)
尺寸i为整数=0
而我
根据数据选择所有范围和格式。我在下面的示例中使用了System.Text.StringBuilder
'your test data
smpl = <root>
<Range>
<from>1</from>
<to>5</to>
</Range>
<Range>
<from>10</from>
<to>20</to>
</Range>
<Range>
<from>100</from>
<to>200</to>
</Range>
</root>
Dim sb As New System.Text.StringBuilder
Dim ct As Integer = 1
For Each r As XElement In smpl...<Range>
sb.AppendFormat("{0}:{1}-{2};", ct, r.<from>.Value, r.<to>.Value)
ct += 1
Next
sb.Remove(sb.Length - 1, 1)
Dim s As String = sb.ToString
如果您有一个
Range
元素,您可以通过在Range元素上调用.element(“from”)
和.element(“to”)
来获取每个子元素。
1:1-5;2:10-20;3:100-200
Dim p as IEnumerable(of Xelement) = txt.Descendants("from")
Dim q as IEnumerable(of Xelement) = txt.Descendants("to")
Dim i as Integer = 0
While i < p.Count
String.Format("{0}:{1}-{2}", i.ToString,p(i),q(i))
End While
'your test data
smpl = <root>
<Range>
<from>1</from>
<to>5</to>
</Range>
<Range>
<from>10</from>
<to>20</to>
</Range>
<Range>
<from>100</from>
<to>200</to>
</Range>
</root>
Dim sb As New System.Text.StringBuilder
Dim ct As Integer = 1
For Each r As XElement In smpl...<Range>
sb.AppendFormat("{0}:{1}-{2};", ct, r.<from>.Value, r.<to>.Value)
ct += 1
Next
sb.Remove(sb.Length - 1, 1)
Dim s As String = sb.ToString
1:1-5;2:10-20;3:100-200