从XML中提取特定值

时间:2012-04-08 01:56:22

标签: c# xml winforms

我有一个非常复杂的xml

我需要来自

的单一值
selectSingleNode(@"/TimeInTransitResponse/TransitResponse/ServiceSummary/EstimatedArrival/BusinessTransitDays").InnerText)

但是这个位置大约有7个条目,所以它只返回我需要的最后一个。

2 个答案:

答案 0 :(得分:2)

您可以使用索引和内部索引来放置last()函数 - 如下所示:

"/TimeInTransitResponse/TransitResponse/ServiceSummary/EstimatedArrival/BusinessTransitDays[last()]"

请参阅MSDN中的last XPath函数。

答案 1 :(得分:0)

改为使用SelectNodes

Dim nodeList As XmlNodeList = root.SelectNodes(@"/TimeInTransitResponse/TransitResponse/ServiceSummary/EstimatedArrival/BusinessTransitDays")
Dim lastNode As XmlNode = nodeList.Item(nodeList.Count - 1)
Dim lastNodeValue As Decimal = Convert.ToDecimal(lastNode.InnerText)

然后取出列表中的最后一个节点。