从xml获取最后一个节点 [英] get last node from xml
本文介绍了从xml获取最后一个节点的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有这样的xml
i希望使用namespacemanager获取最后的shipmentevent节点详细信息
i had xml like this
i want to get last shipmentevent node details using namespacemanager
<?xml version="1.0" encoding="UTF-8"?>
<req:TrackingResponse xmlns:req="http://someurl" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://someurl TrackingResponse.xsd">
<AWBInfo>
<AWBNumber>1234567895</AWBNumber>
<Status>
<ActionStatus>success</ActionStatus>
</Status>
<ShipmentInfo>
<OriginServiceArea/>
<DestinationServiceArea/>
<ShipperName/>
<ConsigneeName/>
<ShipmentDate/>
<DlvyNotificationFlag>N</DlvyNotificationFlag>
<ShipmentEvent>
<Date>2015-02-19</Date>
<Time>15:21:00</Time>
<ServiceEvent>
<EventCode>CC</EventCode>
<Description>Awaiting collection by recipient as requested</Description>
</ServiceEvent>
<Signatory/>
<ServiceArea>
<ServiceAreaCode>MAD</ServiceAreaCode>
<Description>MADRID - SPAIN</Description>
</ServiceArea>
</ShipmentEvent>
<ShipmentEvent>
<Date>2015-02-19</Date>
<Time>15:26:00</Time>
<ServiceEvent>
<EventCode>OK</EventCode>
<Description>Delivered - Signed for by</Description>
</ServiceEvent>
<Signatory>MANUEL</Signatory>
<ServiceArea>
<ServiceAreaCode>MAD</ServiceAreaCode>
<Description>MADRID - SPAIN</Description>
</ServiceArea>
</ShipmentEvent>
</ShipmentInfo>
</AWBInfo>
iam使用这样的代码
shipmenteventdate = xmlDoc.SelectSingleNode(req:TrackingResponse / AWBInfo / ShipmentInfo / ShipmentEvent / Date,namespaceManager).InnerText;
但我得到第一个shipmentevent节点详细信息我想要最后的shipmentevent节点详细信息
谢谢
iam using code like this
shipmenteventdate = xmlDoc.SelectSingleNode("req:TrackingResponse/AWBInfo/ShipmentInfo/ShipmentEvent/Date", namespaceManager).InnerText;
but iam getting first shipmentevent node details i want last shipmentevent node details
Thanks
推荐答案
您可以使用SelectNodes
选择所有节点,然后选择最后一个:
You can select all nodes usingSelectNodes
, and then take the last:
XmlNodeList nodes = xmlDoc.SelectNodes("req:TrackingResponse/AWBInfo/ShipmentInfo/ShipmentEvent/Date", namespaceManager);
XmlNode shipmenteventdate = nodes.Item(nodes.Count - 1);
这篇关于从xml获取最后一个节点的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文