如何在Java中使用XPath读取XML?
如何在Java中使用XPath读取XML?
回答:
你需要遵循以下要求:
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.parse(<uri_as_string>);
XPathFactory xPathfactory = XPathFactory.newInstance();
XPath xpath = xPathfactory.newXPath();
XPathExpression expr = xpath.compile(<xpath_expression>);
然后,调用expr.evaluate()
传入该代码中定义的文档和所需的返回类型,并将结果转换为结果的对象类型。
如果你需要有关特定XPath表达式的帮助,则可能应该将其作为单独的问题进行询问(除非首先是你的问题-我理解你的问题是如何在Java中使用API)。
此XPath表达式将为你提供PowerBuilder
下第一个URL元素的文本:
/howto/topic[@name='PowerBuilder']/url/text()
这将使你获得第二个:
/howto/topic[@name='PowerBuilder']/url[2]/text()
你可以通过以下代码获得该代码:
expr.evaluate(doc, XPathConstants.STRING);
如果你不知道给定节点中有多少个URL,那么你应该这样做:
XPathExpression expr = xpath.compile("/howto/topic[@name='PowerBuilder']/url");NodeList nl = (NodeList) expr.evaluate(doc, XPathConstants.NODESET);
然后遍历NodeList。
以上是 如何在Java中使用XPath读取XML? 的全部内容, 来源链接: utcz.com/qa/411699.html