dom4j之selectSingleNode方法
dom4j之selectSingleNode方法
如:SAXReader saxReader=new SAXReader();
Document document=saxReader.read(new File(xmlFileString));
String xpath="/MSE_CS20_V1.0/response";
Node node=document.selectSingleNode(xpath);//这就是通过xpath来得到Node。是以根节点开始的/MSE_CS20_V1.0/response
System.out.println("通过selectSingleNode来得到node:"+node.getName());
2 该方法是返回Node。selectSingleNode是返回第一个匹配的Node。dom4j中可以得到根节点、通过节点来循环得到该节点的子节点、通过节点name来得到该节点Element。
如:public void testSelectSingleNode(String xmlFileString){
SAXReader saxReader=new SAXReader();
try {
Document document=saxReader.read(new File(xmlFileString));
Element root=document.getRootElement();//得到根节点
String rootName=root.getName();
System.out.println("根节点:"+rootName);
Element element_=(Element)root.elementIterator().next();//通过循环来得到
String xpath="/"+rootName+"/"+element_.getName();
System.out.println("xpath:"+xpath);
Element element__=root.element(element_.getName());//通过节点name来得到该节点Element
System.out.println("通过element方法类得到节点:"+element__.getName());
Node node=document.selectSingleNode(xpath);
System.out.println("通过selectSingleNode来得到node:"+node.getName());
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
总结:现在读取xml文件通过dom4j。可以得到根节点,通过节点来循环得到该节点的子节点,通过节点name来得到Element。通过xpath路径来得到Node(可以强制转化为Element)。
3 通过selectSingleNode方法可以通过xpath路径来得到Node。可以强制转化为Element
如:SAXReader saxReader=new SAXReader();
Document document=saxReader.read(new File(xmlFileString));
Node node=document.selectSingleNode(xpath);
Element elemnt__=(Element)node;//强制转化为Element
System.out.println(elemnt__.getName());
综述,selectSingleNode通过xpath可以得到Node,也可以强制转化为Element,xpath是以/开始,从根节点开始,如:/MSE_CS20_V1.0/response。MSE_CS20_V1.0表示根节点,response是根节点下的子节点
dom4j之selectSingleNode方法的更多相关文章
- Xml中SelectSingleNode方法中的xpath用法
https://blog.csdn.net/wf520pb/article/details/2644549 最常见的XML数据类型有:Element, Attribute,Comment, Text. ...
- Xml中SelectSingleNode方法,xpath查找某节点用法
Xml中SelectSingleNode方法,xpath查找某节点用法 最常见的XML数据类型有:Element, Attribute,Comment, Text. Element, 指形如<N ...
- dom4j中 selectSingleNode 或selectNodes获取不到节点的原因总结 (转)
没想到搞个dom4j会出这么多怪错.. 最近在研究XBRL GL的有关内容,在项目中要求吧XBRL GL导入到11179注册库中,根据11179建立数据库,然后从XBRL GL分类标准中导入数据到数据 ...
- 对DOM,SAX,JDOM,DOM4J四种方法解析XML文件的分析
1.DOM 与平台无关的官方解析方式 DOM是一次性把xml文件加载到内存中,形成一个节点树 对内存有要求 2.SAX java提供的基于事件驱动的解析方式 每次遇到一个标签,会触发相应的事件方法 3 ...
- dom4j里面封装方法的操作
animal.xml <?xml version="1.0" encoding="UTF-8"?><animal> <cat ...
- 用SelectSingleNode()方法查找xml节点一直返回null
代码使用如下 XmlNode root = xmlDoc.SelectSingleNode("Project"); 返回的root一直是null 查了xml文件中确实是有Proje ...
- dom4j学习
在使用xml读写的过程中,用到了dom4j,也算是一个比较主流的xml包了,在使用的过程中,将学习经历记录一下,以后查阅也比较方便. 首先是在pom中添加依赖,在Maven的中心库搜索后选择了该包: ...
- dom4j 使用总结
dom4j是一个Java的XML API,类似于jdom,用来读写XML文件 dom4j的使用方法简单总结来说如下: ①可以创建一个新的xml文件 ②利用SAXReader和File对象创建一个已存在 ...
- DOM4J介绍与代码示例
DOM4J是dom4j.org出品的一个开源XML解析包.Dom4j是一个易用的.开源的库,用于XML,XPath和XSLT.它应用于Java平台,采用了Java集合框架并完全支持DOM,SAX和JA ...
随机推荐
- 近中期3D编程研究目标
近几年一直在用业余时间研究3D编程,研究的中期目标是建立一个实用的开源3D编程框架.3D编程技术最直接的应用是开发游戏,所以3D编程框架也就是3D游戏开发框架.在我看来,游戏是否好玩的关键是能否为玩家 ...
- 使用IntelRealScene设备结合Cocos引擎实现体感游戏开发
英特尔开发人员专区原文地址 Cocos游戏开发引擎对于广大开发者来说都比较熟悉,Intel RealScene是什么呢,简单理解是一种特殊的摄像头,可以捕捉用户的手势,面部表情等,进而实现AR,VR的 ...
- sparkSQL中RDD——DataFrame——DataSet的区别
spark中RDD.DataFrame.DataSet都是spark的数据集合抽象,RDD针对的是一个个对象,但是DF与DS中针对的是一个个Row RDD 优点: 编译时类型安全 编译时就能检查出类型 ...
- daterangepicker时间段插件
1.序言: daterangepicker是Bootstrap的一个时间组件,使用很方便 用于选择日期范围的JavaScript组件. 设计用于Bootstrap CSS框架. 它最初是为了改善报表而 ...
- Beta阶段第二次网络会议
Beta阶段第二次网络会议 第一次会议问题解决情况 画面问题已经解决,游戏提示信息已加入完成 不同情况下背景已加入完成,但细节部分仍需要进行调整 科技树添加完成,权限修改完成,还存在部分细节调整 AI ...
- KNN算法之图像处理一
KNN: 1.数据挖掘分类技术中最简单的方法之一. 2.也称为邻近算法,K最近邻分类算法 3.每个样本都可以用它最接近的k个邻居来代表 4.一般,距离使用欧式距离或曼哈顿距离(通常,k≤20) pyt ...
- FivePlus——成果展示
思路描述:描述对于自己此次任务是如何思考的 这次作业没能帮上什么忙,刚开始还对这次作业有所期待,然而,第一次听他们讨论的时候就??? 之后又去查了一些诸如贪吃蛇类的小游戏,知道大概可以达成什么效果,但 ...
- lintcode-473-单词的添加与查找
473-单词的添加与查找 设计一个包含下面两个操作的数据结构:addWord(word), search(word) addWord(word)会在数据结构中添加一个单词.而search(word)则 ...
- PAT 甲级 1129 Recommendation System
https://pintia.cn/problem-sets/994805342720868352/problems/994805348471259136 Recommendation system ...
- PAT 甲级 1132 Cut Integer
https://pintia.cn/problem-sets/994805342720868352/problems/994805347145859072 Cutting an integer mea ...