第一范文网 - 专业文章范例文档资料分享平台

dom4j解析XML文档

来源:用户分享 时间:2021-06-02 本文由荒城旧梦 分享 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

dom4j解析XML文档

DOM4J解析XML文档学 习 目 标掌握dom4j的概念和特点 掌握dom4j的常用接口 熟练掌握使用dom4j解析XML文档 熟练掌握使用访问者模式遍历XML文档 掌握使用dom4j创建和修改XML文档

dom4j解析XML文档

JAXP虽然在DOM和SAX解析机制上进行了一定的 抽象,但是对XML解析非常繁琐,编程代码冗长, 可读性不高。因此在JAVA领域出现了两个开源的 XML解析器:dom4j和JDOM。 dom4j的开发者说:使用dom4j来解析XML文档, 无须参考任何图书,只要有基本的DOM概念,那么 对着dom4j的API文档即可使用dom4j解析。

dom4j解析XML文档

dom4j概述dom4j是一套开源的XML解析工具,完全支持 DOM、SAX和JAXP机制。与它们相比, dom4j 更为简单易用,因此实际项目中往往选择dom4j 作为XML解析器。 dom4j没有提供其他语言版本,只提供JAVA 语言版本。

dom4j解析XML文档

dom4j的封装和优势dom4j在很大程序上简化了XML的处理方式。从 表面上看, dom4j有点类似于DOM解析机制,也 将XML文档转换为一棵结构化树(dom4j树),但 dom4j树的处理方式比DOM树更为简单。 dom4j DOM 由于dom4j如此优秀,很多优秀的开源项目都采 用dom4j作为XML解析器,在实际的开发过程中, 它通常是首选。

dom4j解析XML文档

面向接口编程它的实质是以其他XML解析器为基础, dom4j采用面 向接口编程的方式来处理XML文档解析,这就允许dom4j 的底层可以在不同的解析机制之间自由切换。

支持多种解析机制

DOMReader:它负责根据W3C的DOM树创建dom4j树 SAXReader:它基于SAX解析机制来分析一份XML文档,并将 其转换为dom4j树 XPP3Reader:其底层需要依赖于XML Pulll Parser 3.x来解析 XML文档,并将其转换为dom4j树 XPPReader:其底层需要依赖于XML Pulll Parser 2.x来解析 XML文档,并将其转换为dom4j树

dom4j解析XML文档

<list> <book>疯狂XML讲义</book> <game>扫雷</game> <sport>乒乓球</sport> </list>

在获取<list…/>节点之后,如果希望获取它包含的3个子节点的数 节点之后,如果希望获取它包含的 个子节点的数 在获取 节点之后 据,需要使用如下代码//获取list元素下的所有子元素 NodeList itemList=list.getChildNodes(); //遍历每个子元素 for(int I=0;I<itemList.getLength();I++){ System.out.println(itemList.item(j).getTextContent().trim()); }

这种处理方式很是繁琐, 元素调用 元素调用getChildNodes()方法返回该 这种处理方式很是繁琐,list元素调用 方法返回该 元素的所有子节点,而不是所有的子元素, 元素的所有子节点,而不是所有的子元素,这使得程序的处理过 程非常繁琐。 程非常繁琐。

dom4j解析XML文档

//获取list元素下的所有子元素 List itemList=list.elements(); //遍历每个子元素 for(int I=0;I<itemList.getLength();I++){ Element ele=(Element)itemList.get(I); System.out.println(els.getText()); }

list元素调用 元素调用elements()方法返回该元

素的所有子元素 包括子节点 方法返回该元素的所有子元素(包括子节点 元素调用 方法返回该元素的所有子元素 和该节点的文本内容),dom4j处理方式更接近平常自然的思维。 和该节点的文本内容) 处理方式更接近平常自然的思维。 处理方式更接近平常自然的思维

dom4j解析XML文档

下载和安装dom4j登录dom4j的官方站点下载最新版本dom4j1.6.1 下载完成后得到dom4j1.6.1.zip,将其解压缩可得到如 下目录结构

docs: docs:该目录下存放了dom4j的说明文件和API文档 dom4j API lib:该目录下存放了dom4j编译和运行所依赖的第三方类库 Src:该目录下存放了dom4j项目的所有源文件 xdocs:该目录存放dom4j的一些相关文档,是XML格式 xml:该目录下存放了dom4j提供了一些简单的范例xml文档 dom4j-1.6.1.jar:dom4j的核心JAR包

将dom4j-1.6.1.jar添加到系统CLASSPATH环境变量中

dom4j解析XML文档

Dom4j常用的API 【重点掌握】Element Branch Document

Cloneable

Node

Attribute

DocumentType

CharacterData

ProcessingInstruction

CDATA

Text

Comment

dom4j解析XML文档

Dom4j的API接口Node Branch Element Doucment Attribute DocumentType ProceesingInstruction CharacterData CDATA Text Comment

简单说明它是dom4j树中所有节点的跟接口 它代表能包含子节点的节点 它代表XML元素 它代表XML文档根 它代表XML元素属性 它代表XML文档中的DOCTYPE声明 它代表XML文档中的处理指令 它是所有文本元素的父接口 它代表XML文档中的CDATA段 它代表XML文档里的文本内容 它代表XML文档里的注释内容

dom4j解析XML文档

除此之外,dom4j为解析xml文档还提供了 DOMReader、SaxReader 、 XPP3Reader和XPPReader 4个解析器,负责将不同形式的XML文 档解析成dom4j树。 对应地, dom4j也提供了如下几个Writer:DOMWriter:该输出工具类负责将dom4j树转换成为W3C的DOM树 SAXWriter:该输出工具类负责将dom4j树输出给SAX的 ContendHandler处理 XMLWriter:该工具类将dom4j树转换成对应的XML文档,并可输出 到指定流中

dom4j解析XML文档

除此之外,如果程序需要创建一份新Document, dom4j还提供了如下2个工具类 DocumentFactory: 该工具提供createDocument()方法用于创建 Document对象 DocumentHelper 该工具提供了大量静态方法用于创建XML文档各 组成部分

dom4j解析XML文档

使用dom4j解析XML文档【重点掌握】使用dom4j解析XML文档的过程是这样的,首先是将 XML文档转换成dom4j树之后,使用一致的编程模型来处 理XML文档。我们可以采用递归方法来获取整份XML文 档里包含的信息。public class Dom4jRead { public static void main(String[] args) throws Exception { //使用SAXReader来解析XML文档 SAXReader reader = new SAXReader(); Document doc = reader.read(new File("book.xml")); Element root = doc.getRootElement(); parse(root); }

搜索“diyifanwen.net”或“第一范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,第一范文网,提供最新人文社科dom4j解析XML文档全文阅读和word下载服务。

dom4j解析XML文档.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/wenku/1209395.html(转载请注明文章来源)
热门推荐
Copyright © 2018-2022 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top