1
中的属性值,我想检索对应于lat = 53.0337395的ids值,在xml中有两个id = lat.053.0337395的id。如下图所示,要实现这一点,我写了下面的代码,但在运行时我收到#NUMBER cannt be converted into a nodelist
如何检索下列xml文件的节点列表
请让我知道如何解决这个问题
String expr0 = "count(//node[@lat=53.0337395]//@id)";
xPath.compile(expr0);
NodeList nodeList = (NodeList) xPath.compile(expr0).evaluate(document,
XPathConstants.NODESET);
System.out.println(nodeList.getLength());
XML:
<?xml version='1.0' encoding='utf-8' ?>
<osm>
<node id="25779111" lat="53.0334062" lon="8.8461545"/>
<node id="25779112" lat="53.0338904" lon="8.846314"/>
<node id="25779119" lat="53.0337395" lon="8.8489255"/>
<tag k="maxspeed" v="30"/>
<tag k="maxspeed:zone" v="yes"/>
<node id="25779111" lat="53x.0334062" lon="8x.8461545"/>
<node id="25779112" lat="53x.0338904" lon="8x.846314"/>
<node id="257791191" lat="53.0337395" lon="8x.8489255"/>
<tag k="maxspeed" v="30x"/>
<tag k="maxspeed:zone" v="yes"/>
</osm>
'字符串expr0 =“计数( //node[@lat=53.0337395] // @ id)“;'在你的情况下应该返回2,并且你说2应该是一个nodeList –