java dom4j解析xml实例
java利用dom4j解析xml 需要的jar包:
dom4j官方网站在 http://www.dom4j.org/
下载dom4j-1.6.1.zip
解开后有两个包,仅操作XML文档的话把dom4j-1.6.1.jar加入工程就可以了,如果需要使用XPath的话还需要加入包jaxen-1.1-beta-7.jar(如果不导入这个架包程序可以执行出结果,但最后会报异常)
将相关jar包引入后,实际解析操作如下:
1.要解析的xml文件data.xml:
<?xml version="1.0" encoding="UTF-8"?>
<ReturnInfo>
<userlist>
<item index="1" level="60" nickname="凄惨的老生" country="金"
weiwang="136929" />
<item index="2" level="85" nickname="哭泣的至尊宝" country="金"
weiwang="97490" />
<item index="3" level="85" nickname="老公" country="金"
weiwang="91103" />
<item index="4" level="78" nickname="冉闵" country="金"
weiwang="82828" />
<item index="5" level="55" nickname="erggh" country="金"
weiwang="77440" />
<item index="6" level="60" nickname="孤峰" country="金"
weiwang="67821" />
<item index="7" level="60" nickname="乱世" country="金"
weiwang="67675" />
<item index="8" level="62" nickname="叛逆之神" country="金"
weiwang="61839" />
<item index="9" level="60" nickname="双乔主人" country="金"
weiwang="61647" />
<item index="10" level="60" nickname="视觉效果" country="金"
weiwang="50200" />
<item index="11" level="60" nickname="鬼鬼" country="金"
weiwang="49537" />
<item index="12" level="59" nickname="狂龙在天" country="金"
weiwang="46687" />
<item index="13" level="60" nickname="小子" country="金"
weiwang="46152" />
<item index="14" level="52" nickname="zzy" country="金"
weiwang="39017" />
<item index="15" level="53" nickname="ycf" country="金"
weiwang="30333" />
<item index="16" level="52" nickname="无界之魂" country="金"
weiwang="20294" />
<item index="17" level="42" nickname="刀锋狼" country="金"
weiwang="18842" />
<item index="18" level="60" nickname="mnbvc" country="金"
weiwang="18102" />
<item index="19" level="41" nickname="赢政" country="金"
weiwang="16331" />
<item index="20" level="52" nickname="徐匡胤" country="金"
weiwang="16156" />
</userlist>
</ReturnInfo>
2、具体解析程序如下:
package demo4; import java.io.File;
import java.util.Iterator;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader; public class TestJava {
public static void main(String args[]) throws DocumentException {
SAXReader reader = new SAXReader();
Document document = reader.read(new File("D:/data.xml"));
Element rootElm = document.getRootElement();
Element root1Elm = rootElm.element("userlist");
List nodes = root1Elm.elements("item");
for (Iterator it = nodes.iterator(); it.hasNext();) {
Element elm = (Element) it.next();
System.out.println("index:" + elm.attributeValue("index")
+ " level:" + elm.attributeValue("level") + " nickname:"
+ elm.attributeValue("nickname") + " country:"
+ elm.attributeValue("country") + " weiwang:"
+ elm.attributeValue("weiwang"));
}
try {
Document doc = reader.read(new File("D:/data.xml"));
List projects = doc.selectNodes("ReturnInfo/userlist/item");
Iterator it = projects.iterator();
while (it.hasNext()) {
Element elm = (Element) it.next();
System.out.println("index:" + elm.attributeValue("index")
+ " level:" + elm.attributeValue("level")
+ " nickname:" + elm.attributeValue("nickname")
+ " country:" + elm.attributeValue("country")
+ " weiwang:" + elm.attributeValue("weiwang"));
} } catch (Exception ex) {
ex.printStackTrace();
}
} }
3、运行结果如下图所示:
<1>、jaxen-1.1-beta-7.jar架包导入后不报异常,正常得到结果:

<2>、jaxen-1.1-beta-7.jar架包不导入后报异常,但也能得到结果:

java dom4j解析xml实例的更多相关文章
- java dom4j解析xml实例(2)
java利用dom4j解析xml 需要的jar包: dom4j官方网站在 http://www.dom4j.org/ 下载dom4j-1.6.1.zip 解开后有两个包,仅操作XML文档的话把dom4 ...
- java dom4j解析xml实例(3)
代码运行前需要先导入dom4j架包. 需要解析的XML文件test.xml如下: <students> <student age="25"><!--如 ...
- java dom4j 解析xml使用实践
参考:https://dom4j.github.io/ http://www.cnblogs.com/liuling/archive/2013/02/05/dom4jxml.html 常用api: 1 ...
- java dom4j解析xml用到的几个方法
1. 读取并解析XML文档: SAXReader reader = new SAXReader(); Document document = reader.read(new File(fileName ...
- dom4j解析xml实例(2)
dom4j是一个java的XML API,类似jdom,用来读写XML文件,它性能优异.功能强大和极易使用等特点 所用jar包:dom4j-1.6.1.jar.jaxen-1.1-beta-6.jar ...
- dom4j解析xml实例
dom4j是一个java的XML API,类似jdom,用来读写XML文件,它性能优异.功能强大和极易使用等特点 所用jar包:dom4j-1.6.1.jar 需要解析的xml文件:people.xm ...
- JAVA DOM4j解析XML数据到自定义javabean
我们获取xml中的数据,一般以面向对象的思想去处理这些数据.因此,我们需要自定义类来封装解析出来的数据,以方便我们操作这些数据. 自定义的java类,称为javabean. 自定义Contact类代码 ...
- 【收藏用】--切勿转载JAVA 使用Dom4j 解析XML
原帖地址 : http://blog.csdn.NET/yyywyr/article/details/38359049 解析XML的方式有很多,本文介绍使用dom4j解析xml. 1.环境准备 (1) ...
- JAVA 使用Dom4j 解析XML
[转自] http://blog.csdn.net/yyywyr/article/details/38359049 解析XML的方式有很多,本文介绍使用dom4j解析xml. 1.环境准备 (1)下载 ...
随机推荐
- sql 判断表是否存在,判断列是否存在
判断表是否存在: 语法: SELECT * FROM dbo.SysObjects where id = object_id(N'表名') 例子: SELECT * FROM dbo.SysObjec ...
- 《Windows驱动开发技术详解》之编程加载NT式驱动
之前我们加载驱动都是利用INSTDRV这个应用,其原理是在注册表中写入相应的字段,这一节我们手动编写代码去加载驱动,其原理类似:
- 关于Unicode字符集
最初的unicode编码是固定长度的,16位,也就是2两个字节代表一个字符,这样一共可以表示65536个字符.显然,这样要表示各种语言中所有的字符是远远不够的.Unicode4.0规范考虑到了这种情况 ...
- IOS 播放视频 MPMoviePlayerController
在unity游戏的开头播放视频 , 根据需求 , 最后决定用 MPMoviePlayerController 来实现播放, 实现如下: by Tin 需要在AppController.mm的 Open ...
- Java良葛格 学习笔记
学习一个新的事物时,如果遇到一些概念无法很快理解,这可能是因为要理解概念会需要其它概念先建立起来,所以先暂时放下这个疑问也是一个学习方法,称之为“存疑” ,在以后的学习过程中待必要的概念学会后,目前的 ...
- MyEclipse修改项目名称
项目上右击鼠标–>Properties–>MyEclipse–>Web–>Content Root–>Web content-root–>改成你想要的项目名 即可 ...
- ecshop后台管理显示扩展分类
ecshop 后台商品列表默认只显示分类下的商品,而不显示扩展分类中的商品,以下是我个人给出的解决方法: 打开admin/includes/lib_goods.php 第839行左右的位置 可以看到如 ...
- linux查看文件及文件夹的大小
最近发现服务器的磁盘容量使用率超过了90%,所以有必要查看是哪个文件占用了太多的空间, 服务器系统:CentOS6.5 df -h #查看磁盘使用情况,步骤1 cd / #切换到根目录, 步骤2 du ...
- oracle数据库字符集的修改
本文摘自:http://blog.csdn.net/nsj820/article/details/65711051.改客户端字符集:通过WINDOWS的运行菜单运行Regedit,修改注册表 Star ...
- sqlQuery.list()方法返回类型
SQLQuery sqlQuery = session.createSQLQuery(this.sql.toString()); List<Object[]> list = (List&l ...