Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xml 访问属性值xpath_Xml_Xpath - Fatal编程技术网

Xml 访问属性值xpath

Xml 访问属性值xpath,xml,xpath,Xml,Xpath,我正在尝试使用vba中的xpath查询访问此xml片段中的经度值(-1.914),其中itemfileUID=2000044[通过设置纬度=oXMLFile.SelectNodes(//ViewCoordinates[itemfileUID='2000044']]/ViewCoordinatePair[@name='latitude']/@value”)。有人能帮忙吗 我已经搜索了又搜索,但没有找到一种基于同一节点中元素的内容来查找属性值的方法 谢谢 汤姆 2000044 使用: 或者,检查父

我正在尝试使用vba中的xpath查询访问此xml片段中的经度值(-1.914),其中itemfileUID=2000044[通过设置纬度=oXMLFile.SelectNodes(//ViewCoordinates[itemfileUID='2000044']]/ViewCoordinatePair[@name='latitude']/@value”)。有人能帮忙吗

我已经搜索了又搜索,但没有找到一种基于同一节点中元素的内容来查找属性值的方法

谢谢 汤姆


2000044
使用:

或者,检查父项:

//ViewCoordinates[itemFileUID = '2000044']/ViewCoordinatePair[@name = 'longitude']/@value
使用:

或者,检查父项:

//ViewCoordinates[itemFileUID = '2000044']/ViewCoordinatePair[@name = 'longitude']/@value
这就是解决方案:

Set latitude = oXMLFile.SelectNodes("/schema/View/ViewCoordinatesList/ViewCoordinates[ItemFileUID = '2000044']/ViewCoordinatePair[@name = 'longitude']")
MsgBox latitude(0).getAttribute("value")
感谢人们的帮助

这就是解决方案:

Set latitude = oXMLFile.SelectNodes("/schema/View/ViewCoordinatesList/ViewCoordinates[ItemFileUID = '2000044']/ViewCoordinatePair[@name = 'longitude']")
MsgBox latitude(0).getAttribute("value")

感谢大家的帮助

注意,您正在询问
纬度
,但在您的示例中提到
-1.914
,它是
经度
。@alecxe道歉-现在更新为longitudevba snipped,上面添加了链接到@alecxe responseNote,您正在询问
纬度
,但是提到了您的示例中的
-1.914
,这是
经度
。@alecxe道歉-现在更新为longitudevba snipped,上面添加了链接到@alecxe responsethanks的链接-我正在尝试msgbox此值,但失败了?@TomH好的,如何失败?你在哪里运行这个?谢谢。@alexce-vba-这返回一个IXMLDOMSelection,我不知道如何访问字符串。。。正如您所猜测的,这不是我的字段…@TomH不熟悉使用VBA进行xml解析,但我怀疑您应该首先匹配节点,并在末尾省略
/@value
部分。然后,当您有一个节点时,获取
value
attribute/property的值。谢谢-我正在尝试msgbox这个值,但是失败了?@TomH好的,怎么失败?你在哪里运行这个?谢谢。@alexce-vba-这返回一个IXMLDOMSelection,我不知道如何访问字符串。。。正如您所猜测的,这不是我的字段…@TomH不熟悉使用VBA进行xml解析,但我怀疑您应该首先匹配节点,并在末尾省略
/@value
部分。然后,当您有一个节点时,获取
value
attribute/property的值。