dom4j读取xml文件获取所有标签
来源:互联网 发布:方正电子书数据库 编辑:程序博客网 时间:2024/05/21 19:32
(图片引用传智教育)
其实读取所有节点不易理解的地方就是Element (标签节点)和Node(节点)为什么要转来转去
1 . 首先是getRootElement方法,这个方法返回的是一个标签节点 ,标签节点可以调用nodeIterator()函数,返回一个迭代器
2 . 这时候用迭代器迭代出来的全部是Node节点,因为并不是所有的node节点都有子节点对象,所以并不能直接用Node节点来调用nodeIterator()函数
3 . 进行判断这个Node节点是不是Element节点(标签节点)
4 . 如果这个Node节点是标签节点,强转为Element节点(标签节点),然后在调用nodeIterator()函数
5 . 这样就可以把所有的节点信息全部读出
Demo2.java
import org.dom4j.Document;import org.dom4j.DocumentException;import org.dom4j.Element;import org.dom4j.Node;import org.dom4j.io.SAXReader;import java.lang.annotation.Documented;import java.lang.annotation.ElementType;import java.util.Iterator;/** * Created by LiJing on 2017/8/27. */public class Demo1 { public static void main(String[] args) throws DocumentException { //获取dom对象 SAXReader reader = new SAXReader(); Document document = reader.read(".//src//contact.xml"); //获取根节点 Element element = document.getRootElement(); getChildNodes(element); } public static void getChildNodes(Element element){ System.out.println(element.getName()); Iterator<Node> it = element.nodeIterator(); while(it.hasNext()){ Node node = it.next(); //只有标签节点才有子节点 所以判断这个节点是否是标签节点 if(node instanceof Element){ Element element1 = (Element)node; getChildNodes(element1); } } }}
contact.xml
<?xml version="1.0" encoding="utf-8"?><contactList> <contact id="001"> <name>张三</name> <age>20</age> <phone>134222223333</phone> <email>zhangsan@qq.com</email> <qq>432221111</qq> </contact> <contact id="002"> <name>李四</name> <age>20</age> <phone>134222225555</phone> <email>lisi@qq.com</email> <qq>432222222</qq> </contact></contactList>
阅读全文
0 0
- dom4j读取xml文件获取所有标签
- Domj4读取XML文件--实现获取XML文件中所有的标签节点
- xml文件读取-dom4j
- dom4j读取xml文件
- dom4j读取xml文件
- dom4j读取xml文件
- Dom4j读取XML文件
- Dom4j读取xml文件
- DOM4J读取XML文件
- DOM4J读取XML文件
- Dom4j读取Xml文件
- dom4j读取xml文件
- Dom4j读取xml文件
- DOM4J jar包 获取xml文件中的标签内容
- dom4j读取xml文件例子
- 使用dom4j读取xml文件
- 使用DOM4j读取xml文件
- 使用Dom4j读取xml文件
- java中的static关键字
- Parade
- Release错误提示解决办法
- 终身伴侣(两个人的网站)代码+效果演示(文末源码地址)
- B
- dom4j读取xml文件获取所有标签
- 最为流行的几款Java IDE
- Grasshopper And the String
- Emergency(只有10分),保存一下代码。求大神改正。
- 1211:中文系素素的困惑
- lyx中文配置
- 微分享-高并发下的缓存实战
- 数据挖掘AdaBoost
- 用jquery获取元素的下标的值和eq的用法--案例