应用DOM4J解析节点信息

package com;

import java.io.File;

import java.util.BitSet;

import java.util.Iterator;

import java.util.List;

import org.dom4j.Attribute;

import org.dom4j.Document;

import org.dom4j.DocumentException;

import org.dom4j.Element;

import org.dom4j.io.SAXReader;

public class DOM4J {

private static int number = 0;

public static void main(String[] args) {

// TODO Auto-generated method stub

//解析books.xml

//创建SAXReader的对象的reader

SAXReader reader = new SAXReader();

//通过读取reader对象的reader方法加载books.xml

try {

Document document = reader.read(new File("src/res/books.xml"));

//通过Document对象获取根节点bookStorre

Element bookStore = document.getRootElement();

//通过Element方法获取迭代器

Iterator<Element> it = bookStore.elementIterator();

//遍历迭代器获取根节点中的信息

while(it.hasNext()){

number++;

System.out.println("======开始遍历第"+ number +"本书======");

Element book = (Element) it.next();

//获取book的属性名和值

List<Attribute> bookAttrs = book.attributes();

for(Attribute attr : bookAttrs){

System.out.println("节点名 : " + attr.getName() + "----属性值 : " + attr.getValue());

}

Iterator itt = book.elementIterator();

while(itt.hasNext()){

Element bookChild = (Element) itt.next();

System.out.println("节点名是: " + bookChild.getName() + "----节点值 : " + bookChild.getStringValue());

}

System.out.println("======结束遍历第"+ number +"本书======");

}

} catch (DocumentException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

时间: 2024-10-16 19:22:44

应用DOM4J解析节点信息的相关文章

使用DOM4J解析XMl文件与读取XML文件

XML文件 1 <?xml version="1.0" encoding="UTF-8"?> 2 <bookstore> 3 <book id="1"> 4 <name>冰与火之歌</name> 5 <author>乔治马丁</author> 6 <year>2014</year> 7 <price>89</price&g

DOM综合案例、SAX解析、StAX解析、DOM4J解析

今日大纲 1.DOM技术对xml的增删操作 2.使用DOM技术完成联系人管理 3.SAX和StAX解析 4.DOM4J解析 5.XPATH介绍 1.DOM的增删操作 1.1.DOM的增加操作 /* * 演示使用dom技术给xml中添加标签 * <book> <name id="b001">SSH</name> <author>老于</author> <price>152</price> </boo

Dom4j解析语音数据XML文档(注意ArrayList多次添加对象,会导致覆盖之前的对象)

今天做的一个用dom4j解析声音文本的xml文档时,我用ArrayList来存储每一个Item的信息,要注意ArrayList多次添加对象,会导致覆盖之前的对象:解决方案是在最后将对象添加入ArrayLis时先new 一个对象,然后将之前那个对象的属性set到新的对象中,之后在加入到 ArrayList,就不会出错了. package parseXML; import org.dom4j.Attribute;import org.dom4j.Document;import org.dom4j.E

使用dom4j解析XML文档

dom4j的包开源包,不属于JDK里面,在myeclipse中要单独导入在项目中,这里不累赘了 做这个过程,很慢,因为很多方法没用过不熟悉,自己得去查帮助文档,而且还得去试,因为没有中文版,英文翻译不准确,也会导致多个同名的方法理解和用法不同 XML: <?xml version="1.0" encoding="utf-8"?> <students> <student age="25"> <name>

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

简介 dom4j是由dom4j.org出品的一个开源XML解析包.这句话太官方,我们还是看一下官方给出的解释.如下图: dom4j是一个易于使用的.开源的,用于解析XML,XPath和XSLT等语言的库.它应用于Java平台,采用了Java集合框架并完全支持DOM,SAX和JAXP等编程标准. 特点 dom4j是一个非常非常优秀的Java XML API,具有性能优异.功能强大和极端易用的特点,同时它也是一个开放源代码的软件.如今你可以看到越来越多的Java软件都在使用dom4j来读写XML,例

XML学习笔记(五):使用 jdom和dom4j 解析XML

XML解析的详细分析与jaxp解析XML详见:XML学习笔记(四):使用 DOM和SAX 解析XML 一.JDom 1.创建XML文件: 1)Document类即代表整个XML文档,把生成的 Document 利用 XMLOutputter 类输出即可. 2)映射关系:元素:Element:属性:Attribute:注解:Comment:文本信息:Text: 3)注意:addContent()是追加,setContent()会覆盖. /** * 创建XML * * @throws IOExcep

dom4j解析xml字符串实例

与利用DOM.SAX.JAXP机制来解析xml相比,DOM4J 表现更优秀,具有性能优异.功能强大和极端易用使用的特点,只要懂得DOM基本概念,就可以通过dom4j的api文档来解析xml.dom4j是一套开源的api.实际项目中,往往选择dom4j来作为解析xml的利器. 先来看看dom4j中对应XML的DOM树建立的继承关系 针对于XML标准定义,对应于图2-1列出的内容,dom4j提供了以下实现: 同时,dom4j的NodeType枚举实现了XML规范中定义的node类型.如此可以在遍历x

【学习笔记】关于DOM4J:使用DOM4J解析XML文档

一.概述 DOM4J是一个易用的.开源的库,用于XML.XPath和XSLT中.采用了Java集合框架并完全支持DOM.SAX.和JAXP. DOM4J最大的特色是使用大量的接口,主要接口都在org.dom4j这个包里定义: 二.DOM4J的接口 Attribute:定义了XML的属性: Branch:是能够包含子节点的节点,如XML元素(Element)和文档(Documents)定义了一个公共的行为: CDATA:定义了XML的CDATA区域: CharacterData:是一个标识接口,标

XML_05_DOM、JDOM、DOM4J解析XML实例

标签: xmlstringencoding文档tabledisk 2012-06-12 20:31 866人阅读 评论(0) 收藏 举报 分类: XML(7) java(44) 版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[+] 一.DOM方式 原始name.xml [html] view plain copy <?xml version="1.0" encoding="GB2312" standalone="no"?&