2021-09-29 XML之解析文档:

一、常用方式:

①DOM ②SAX ③JDOM ④.DOM4J

① DOM(Document Object Model):

文档对象模型,是官方推荐的标准,与平台和语言无关。 会将xml中的文件内容以树的结构一次性加载到内存中,可以对xml中的文档中的内容进行随机访问或修改的操作。但是对于大文档来说解析效率低下,内存成本高。

 ② SAX(Simple Api For Xml):

简单应用程序接口 ,以事件为驱动,需要哪些数据再加载和解析哪些内容,解析速度快,占用内存少。 但是不会将内容加载到内存,使用起来不方便,反而会增加程序的负担。

 ③ JDOM(java和DOM的结合体)

是基于java平台使用的,简单高效,但也需要加载整个文档,对内容容量要求高。

 ④ DOM4J:

是一个java的XML的API,类似于JDOM,用来读写XML文件,性能优异、功能强大、简单易用,且开源。 * 是目前最流行、最好用的XML解析工具,解析XML速度最快。

二、使用dom4j解析xml文档的大致步骤

1、创建SAXReader

2、使用SAXReader读取要解析的XML文档,并生成对应的Document对象。 这一步也是DOM解析耗时耗资源的地方,因为会先将XML文档全部读取完毕,并内建整棵树结构,封装到Document对象中。

3、通过Document对象获取根元素。

4、按照XML的结构从根元素开始逐级获取子元素,以达到遍历XML文档的目的。

三、Element

该类的每一个实例都用于表示xml文档中的一对标签,其提供了很多便于获取信息的相关方法:

1、方法们:

[String] getName():获取标签的名字

[String] getText():获取标签中间的文本

[String] elementTxt(String name):直接利用标签名获取文本 =element(String name).getTxt()

[Element] element(String name):获取当前标签中指定名字的标签

[List] elements():获取当前标签中的所有子标签

[List] elements(String name):获取当前标签中指定名字的所有同名子标签

[Attribute] attribute("id"):获取标签的属性

[String] getValue():获取属性值

[String] attributeValue(String name):直接通过属性名获取属性值

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值