有一段xml 里面有 prefix URL namespace的 , 这时用xpath解析 像平常那样写解析不出来节点
<?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <GetTokenResponse xmlns="urn:LBaseComponents"> <Timestamp>2012-11-06T05:04:55.256Z</Timestamp> <Ack>Success</Ack> <AuthToken>xxxxx</AuthToken> </GetTokenResponse> </soapenv:Body> </soapenv:Envelope>
google了一下 最后用
@"//*[local-name()='AuthToken'] "
解决了
文章 link: http://www.velocityreviews.com/forums/t169475-xpath-and-namespaces-a-newbie-question.html
还找到一个在线的xpath test 站点 http://www.xpathtester.com
本文讨论了在XML文件中使用XPath解析遇到的问题,特别是当XML文件包含命名空间时如何正确地使用XPath来定位特定元素。通过实践示例,作者分享了解决该问题的方法,即在XPath表达式中明确指定命名空间前缀,从而成功地从XML文档中获取所需的数据。
6万+

被折叠的 条评论
为什么被折叠?



