我试图使用VB.net的XML解析功能
以下是Google的流量指示API返回的一些XML。
获取总距离值的VB.net代码是
returnedDistanceMeters = returnedXML...<route>...<leg>...<distance>...<value>.Value
但它是&#34;短切&#34;到第一步&#34;步骤&#34;节点,并给我88我想要的地方193108.如何避免它跳到第一个叫做#34;距离&#34; ?
答案 0 :(得分:0)
我不知道是否有更好的方法。但每次我必须在.net上使用xml时,我更喜欢使用xsd.exe来创建一个类。
http://msdn.microsoft.com/en-us/library/x6c1kb0s(v=vs.110).aspx
将.vb文件添加到项目后,可以使用此函数从xml文件初始化类:
Private Function getTraficFromFile(ByVal path As String) As trafic
Dim stream As New IO.StreamReader(path)
Dim ser As New Xml.Serialization.XmlSerializer(GetType(trafic))
Dim mytrafic As New trafic
mytrafic = CType(ser.Deserialize(stream), trafic)
stream.Close()
Return mytrafic
End Function
您可以像普通属性一样访问xml值,例如:
Dim mytraffic as trafic = getTraficFromFile(path)
MsgBox(mytraffic.route.leg.step(19).distance)