xml文件的解析方式

就目前来说,有三种方式可以解析XML文件:DOMSAXStAXDOM将整个XML文件加载到内存中,并构建出节点树;应用程序可以通过遍历节点树的方式来解析XML文件中的各个节点、属性等信息;这种方式便于对XML节点的添加修改等,而且解析也很方便,然后它比较耗费内存,解析速度也不快。SAX则是基于事件的解析,解析器在一次读取XML文件中根据读取的数据产生相应的事件,由应用程序实现相应的事件处理逻辑,即它是一种“推”的解析方式;这种解析方法速度快、占用内存少,但是它需要应用程序自己处理解析器的状态,实现起来会比较麻烦,而且它只支持对XML文件的读取,不支持写入。不同于SAX的“推”的解析方式,StAX是基于“拉”的解析方式,即应用程序根据自己的需要控制解析器的读取;这种方式继承了SAX解析速度快、占用内存少等优点,同时它好保持了接口简单、编程容易等特点;不过它也应该不支持写XML文件的,木有仔细看过这个框架,先猜测一下~~。貌似DOM底层采用了SAX的实现,因而本文首先介绍基于SAX方式的XML文件解析。

SAX的解析框架相对比较简单,以下是它核心类关系图:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值