目前我只获得第一个带声望的DisplayName> 100.如何打印10个第一个DisplayName? 像输出一样,我想获得10个第一个DisplayName with Reputation>的列表100。
这是我的主文件:
String output = (String) xPath.evaluate(
"/users/row[@Reputation>'100']/@DisplayName",
doc2.getDocumentElement(),
XPathConstants.STRING);
System.out.println("DisplayName for user with Reputation > 100: " + output);
答案 0 :(得分:2)
尝试position()
语法
/users/row[@Reputation>'100' and position() < 11]/@DisplayName
根据Xpath Syntax:
/书店/书[位置()&LT; 3]
选择作为bookstore元素的子元素的前两个book元素
答案 1 :(得分:0)
xPath.evaluate可以返回各种对象类型。这由第三个参数控制,您已将其指定为“XPathConstants.STRING”。
我相信您正在寻找XPathConstants.NODESET,例如:
NodeList nodes = (NodeList)xPath.evaluate("/users/row[@Reputation>'100']/@DisplayName", doc2.getDocumentElement(), XPathConstants.NODESET);
我留给你查找XPath NodeSet的API。