Java通过XPath获取XML文件中符合特定条件的节点
作者:李灿辉 发布时间:2023-01-19 07:42:34
标签:java,xml,xpath,节点
在Java解析XML文件的过程中,有时需要获取符合某些特定条件的节点,以下是实现代码。
import javax.xml.xpath.XPath;
import javax.xml.xpath.XPathConstants;
import javax.xml.xpath.XPathExpressionException;
import javax.xml.xpath.XPathFactory;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text;
import org.w3c.dom.Element;
String value = new String("test");
XPath xpath = XPathFactory.newInstance().newXPath();
String expression = "//ElementName[@moduleName='" + value + "']";
Element element = null;
try {
element = (Element) xpath.evaluate(expression, document,
XPathConstants.NODE);
} catch (XPathExpressionException e) {
e.printStackTrace();
}
以上程序的作用是,在所有ElementName节点中,找到一个属性moduleName为value的节点。
如果需要找到所有符合条件的节点,则需要将XPathConstants.NODE改为XPathConstants.NODESET。此时,返回值类型为NodeList类型,进行强制类型转换后即可对所有符合条件的节点进行进一步的操作。
来源:https://blog.csdn.net/li_canhui/article/details/6634855


猜你喜欢
- 作为开发者我们需要经常站在用户角度考虑问题,比如在应用商城下载软件时,当用户点击下载按钮,则会有下载进度提示页面出现,现在我们通过线程休眠的
- 文章转自微信公众号:CPP开发前沿当进程结束使用共享内存区时,要通过函数 shmdt 断开与共享内存区的连接。该函数声明在 sys/shm.
- 概述从今天开始, 小白我将带大家开启 Jave 数据结构 & 算法的新篇章.栈栈 (Stack) 是一种运算受限的线性表, 遵循先进
- 引言: Spring Boot号称微服务的利器,在结合了Spring Data与JPA之后,更是如虎添翼,开发快速的不像话,本文将讲述一个关
- 什么是深度优先什么是深度,即向下,深度优先,即向下优先,一口气走到底,走到底发现没路再往回走。在算法实现上来讲,深度优先可以考虑是递归的代名
- 一、匹配字符串正则1//正则1 Regex r = new
- 序初涉江湖,还望海涵!写点东西,纯粹是因为个人的记忆能力较弱,写些笔记罢了,若有错误还望雅正!对Android中的时间获取做个记录,以下为结
- 前段时间在看属性动画,恰巧这个按钮的效果可以用属性动画实现,所以就来实践实践。效果基本出来了,大家可以自己去完善。首先看一下效果图:我们看到
- 1、定义一个接口 Animalpackage com.zh.vo;public interface Animal { void
- 本文实例讲述了Android编程实现将ButtonBar放在屏幕底部的方法。分享给大家供大家参考,具体如下:前面一篇《Android编程实现
- 1、导包,四大核心包,一个切面包(AOP),logging,web,springmvc2、配置文件,核心代码如下:web.xml<se
- 本文为大家分享了经典24点纸牌益智游戏的具体实现方法,供大家参考,具体内容如下一.实验内容24点游戏是经典的纸牌益智游戏。常见游戏规则:从扑
- Json 是一个用于 Java 对象 和 Json 文本 相互转换的工具类。安装下载源码g
- 本文实例讲述了Android ActionBar Item用法。分享给大家供大家参考,具体如下:这里主要讲述ActionBar Item的使
- 一. SpringBoot集成liquibase项目集成liquibase作用对数据库表字段进行版本控制项目初始化部署时初始化数据库表和数据
- 进度条样式在项目中经常可以见到,下面小编给大家分享Android三种方式实现ProgressBar自定义圆形进度条。Android进度条有4
- 本文实例讲述了java实现日期拆分的方法。分享给大家供大家参考。具体如下:如:计算6-1至6-5之间的日期天数及具体日期,预期的结果是得到:
- Retrofit 基本使用implementation 'com.squareup.retrofit2:retrofit:2.9.0
- 本文实例讲述了Java实现的傅里叶变化算法。分享给大家供大家参考,具体如下:用JAVA实现傅里叶变化 结果为复数形式 a+bi废话不多说,实
- 本人一般也很少上传照片之类的女生喜欢玩的东西,但是偶尔还是要传一传的,为什么?因为现在与各种以前的朋友同学都很少联系,但是只要一发有个人照片