dom4j是一个java的XML API,类似jdom,用来读写XML文件,它性能优异、功能强大和极易使用等特点

所用jar包:dom4j-1.6.1.jar、jaxen-1.1-beta-6.jar

需要解析的xml文件:people.xml

<people city="shenzhen">
<student name="milton" age="22"></student>
<student name="lego" age="23"></student>
<teacher name="bruce" age="27"></teacher>
<teacher name="ziven" age="28"></teacher>
</people>

java代码如下:

package demo5;

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 Test01 {
public static void main(String args[]) throws DocumentException {
SAXReader reader = new SAXReader();
Document document = reader.read(new File("D:/people.xml"));
Element rootElm = document.getRootElement();
//Element root1Elm = rootElm.element("city");
@SuppressWarnings("rawtypes")
List nodes = rootElm.elements("student");
@SuppressWarnings("rawtypes")
List nodess = rootElm.elements("teacher");
for (@SuppressWarnings("rawtypes")
Iterator it = nodes.iterator(); it.hasNext();) {
Element elm = (Element) it.next();
System.out.println("name:" + elm.attributeValue("name")
+ " age:" + elm.attributeValue("age"));
}
for (@SuppressWarnings("rawtypes")
Iterator it = nodess.iterator(); it.hasNext();) {
Element elm = (Element) it.next();
System.out.println("name:" + elm.attributeValue("name")
+ " age:" + elm.attributeValue("age"));
}
System.out.println();
try {
Document doc = reader.read(new File("D:/people.xml"));
@SuppressWarnings("rawtypes")
List projects = doc.selectNodes("people/student");
@SuppressWarnings("rawtypes")
List projectss = doc.selectNodes("people/teacher");
@SuppressWarnings("rawtypes")
Iterator it = projects.iterator();
while (it.hasNext()) {
Element elm = (Element) it.next();
System.out.println("name:" + elm.attributeValue("name")
+ " age:" + elm.attributeValue("age"));
}
@SuppressWarnings("rawtypes")
Iterator its = projectss.iterator();
while (its.hasNext()) {
Element elm = (Element) its.next();
System.out.println("name:" + elm.attributeValue("name")
+ " age:" + elm.attributeValue("age"));
} } catch (Exception ex) {
ex.printStackTrace();
}
} }

代码运行后结果如下:

dom4j解析xml实例(2)的更多相关文章

  1. java dom4j解析xml实例(2)

    java利用dom4j解析xml 需要的jar包: dom4j官方网站在 http://www.dom4j.org/ 下载dom4j-1.6.1.zip 解开后有两个包,仅操作XML文档的话把dom4 ...

  2. java dom4j解析xml实例

    java利用dom4j解析xml 需要的jar包: dom4j官方网站在 http://www.dom4j.org/ 下载dom4j-1.6.1.zip 解开后有两个包,仅操作XML文档的话把dom4 ...

  3. dom4j解析xml实例

    dom4j是一个java的XML API,类似jdom,用来读写XML文件,它性能优异.功能强大和极易使用等特点 所用jar包:dom4j-1.6.1.jar 需要解析的xml文件:people.xm ...

  4. java dom4j解析xml实例(3)

    代码运行前需要先导入dom4j架包. 需要解析的XML文件test.xml如下: <students> <student age="25"><!--如 ...

  5. 【JAVA使用XPath、DOM4J解析XML文件,实现对XML文件的CRUD操作】

    一.简介 1.使用XPath可以快速精确定位指定的节点,以实现对XML文件的CRUD操作. 2.去网上下载一个“XPath帮助文档”,以便于查看语法等详细信息,最好是那种有很多实例的那种. 3.学习X ...

  6. dom4j解析xml文档全面介绍

    一.dom4j介绍 dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的.dom4j是一个非常非常优秀的Java XML API,具有性能优异.功能强大和极端易用使用的特点, ...

  7. 源生API解析XML文档与dom4j解析XML文档

    一.XML语言 XML是一种可扩展的标记语言,是一种强类型的语言,类似HTML(超文本标记语言,是一种弱类型的语言).XML是一种通用的数据交换格式(关系型数据库),综上所诉:XML可以传输数据,也可 ...

  8. 【java项目实战】dom4j解析xml文件,连接Oracle数据库

    简单介绍 dom4j是由dom4j.org出品的一个开源XML解析包.这句话太官方.我们还是看一下官方给出的解释.例如以下图: dom4j是一个易于使用的.开源的,用于解析XML,XPath和XSLT ...

  9. org.dom4j 解析XML

    org.dom4j 解析xml java 代码 1 import java.io.File; import java.io.FileOutputStream; import java.io.FileW ...

随机推荐

  1. cocoaPods的安装方法

    1.打开终端 2.先升级Gem sudo gem update --system 3.切换cocoapods的数据源 [先删除,再添加,查看] gem sources --remove https:/ ...

  2. java本地方法

    一. 什么是Native Method   简单地讲,一个Native Method就是一个java调用非java代码的接口.一个Native Method是这样一个java的方法:该方法的实现由非j ...

  3. wmts调用路径手工合成

    wmts调用路径手工合成 一般OGC WMTS地图只提供了xml描述,地图应用常常要合成WMTS完整的调用URL.我们需要获知以下参数: BaseURL:例如 "http://10.36.5 ...

  4. 用非GUI模式执行测试,jp@gc - PerfMon Metrics Collector会出现无法获取正确数据的解决办法

    用非GUI模式执行测试,jp@gc - PerfMon Metrics Collector会出现无法获取正确数据(实际显示的是Response Times Over Time),解决办法:在GUI模式 ...

  5. window2008 64位系统无法调用Microsoft.Office.Interop组件进行文件另存的解决办法

    生成execl时遇到的问题: 检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005 ...

  6. ListView间隔设置颜色

    在Adapter的getView中 if (position % 2 == 0) holder.shoucangbt.setBackgroundColor( Color.rgb(246, 246, 2 ...

  7. oracle11g 卸载和安装(win7,32位)

    完全卸载oracle11g步骤:1. 开始->设置->控制面板->管理工具->服务 停止所有Oracle服务.2. 开始->程序->Oracle - OraDb11 ...

  8. mysql主从复制的配置总结

    首先确定安装配置的环境 centOS7,mysql5.6 在配置之前要保证的几个点 1.系统防火墙,如果只是测试,可以关闭防火墙,如果不是测试,请开发需要使用的端口号,如3306: 开放端口 fire ...

  9. Ajax应用-Ajax传输JSON数据实例

    ———————————————————— <script type="text/javascript">            var client;          ...

  10. scala与java的==的比较

    如果你想比较一下看看两个对象是否相等,可以使用或者==,或它的反义 !=.(对所有对象都适用,而不仅仅是基本数据类型) ? 1 2 3 4 scala> 1 ==  2 res24: Boole ...