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)下载 ...
随机推荐
- 深入了解当前ETL的一些基本技术
数据集成是把不同来源.格式和特点的数据在逻辑上或物理上有机地集中,从而为企业提供全 面的数据共享,是企业商务智能.数据仓库系统的重要组成部分.ETL是企业数据集成的概念出发,简要分析了当前ETL中用到 ...
- Windows如何压缩tar.gz格式
Windows如何压缩tar.gz格式 tar.gz 是linux和unix下面比较常用的格式,几个命令就可以把文件压缩打包成tar.gz格式 然而这种格式在windows并不多见,WinRAR.Wi ...
- linux上安装配置samba服务器
linux上安装配置samba服务器 在linux上安装配置samba服务器 在这给大家介绍一个不错的家伙,samba服务.如果您正在犯愁,如何在Windows和Linux之间实现资源共享,就请看看这 ...
- 编辑器phpstrom的快捷键修改
file->setting-->查找 keymap -->查找 format 格式化代码 ctrl+alt +L appearance-->外观-->显示行号
- 微信接口开发1--向微信发送请求--获取access_token
//随便放置一个php文件在服务器上.执行该方法--调用模拟get提交---到微信-->获得微信返回的access_token 不建议自己编写模拟get提交方法. 建议直接导入微信框架LaneW ...
- ieee80211_rx
ieee80211rx.c(E:\code\linux\net\ieee80211) 所有接收到的帧都送到这个函数中去 int ieee80211_rx(struct ieee80211_device ...
- android网络编程之HttpUrlConnection的讲解--实现文件的断点上传
1.网络开发不要忘记在配置文件中添加访问网络的权限 <uses-permission android:name="android.permission.INTERNET"/& ...
- MySQL函数大全【转载】
转载自 http://www.jb51.net/article/40179.htm 一.数学函数ABS(x) 返回x的绝对值BIN(x) 返回x的二进制(OCT返回八进制,HEX返回十六进制) ...
- Linux系统的时区和时间调整
linux调整系统时区: 1)tzselect命令 找到相应的时区文件/usr/share/zoneinfo/Asia/Shanghai,用这个文件替换当前的/etc/localtime文件. 或者 ...
- 硬盘安装win8系统方法汇总
从硬盘安装 (推荐)硬盘安装方法一 使用Nt6 hdd installer进行安装,此方法适合XP,vista, Windows 7等系统. 下载Nt6 hdd installer(Win8硬盘安装工 ...