ai didi

java - 如何在 Java 中从 XPath 获取元素

转载 作者:行者123 更新时间:2023-12-03 16:01:10 24 4
gpt4 key购买 nike

我想从 XPath 查询获取数据:

Element location = (Element) doc.query("//location[location_name='"+ locationName +"']/*").get(0).getDocument().getRootElement();
System.out.println(location.toXML());

Element loc = location.getFirstChildElement("location");
System.out.println(loc.getFirstChildElement("location_name").getValue());

但是,无论我选择什么,我总是得到 1 个节点(因为 .get(0))。我不知道如何选择通过查询选择的节点。

我发现我应该将节点转换为 Element ( XOM getting attribute from Node? ),但该链接仅显示如何选择第一个节点。

最佳答案

对结果中的第一个元素调用 getParent():

Builder parse = new Builder();
Document xml = parse.build("/var/www/JAVA/toForum.xml");

System.out.println(xml.query("//location[@id=83]/*").get(0).getParent().toXML());

产生以下输出:

<location id="83">
<location_name>name</location_name>
<company_name>company a</company_name>
<machines>
<machine id="12">A</machine>
<machine id="312">B</machine>
</machines>
</location>

关于java - 如何在 Java 中从 XPath 获取元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6027890/

24 4 0
文章推荐: XSLT 与 SQL 类似的功能 "WHERE LIKE"
文章推荐: ruby-on-rails - 将 foreman 与多个 .env 文件一起使用
文章推荐: c# - 使用 Linq 查询 XElement - 深入了解 XElement
文章推荐: XPath 跟随多个条件的兄弟
行者123
个人简介

我是一名优秀的程序员,十分优秀!

滴滴打车优惠券免费领取
滴滴打车优惠券
全站热门文章
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com