DOM和SAX区别
DOM解析适用于对文件进行修改和随机存取的操作,但是不适合于大型文件的操作;
SAX采用部分读取的方式,所以可以进行大型文件处理,而且只需要从文件中读取特定内容,而且SAX解析可以由用户自己建立对象模型。
下面采用SAX解析方式读取之前的member.xml文件。如果要完成SAX解析,首先必须定义一个SAX解析器,以及一个xml信息的简单Java类---LinkMan.java
在member.xml文件中,每一个linkman节点都有name和email两个节点,所以LinkMan.java类的主要功能是保存每组节点中的数据。
【定义SAX解析器,此类继承DefaultHandler类】
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsISPrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdsATOfd3bkFGazxCMx8VesATMfhHLlN3XnxCMwEzX0xiRGZkRGZ0Xy9GbvNGLpZTY1EmMZVDUSFTU4VFRR9Fd4VGdsYTMfVmepNHLrJXYtJXZ0F2dvwVZnFWbp1zczV2YvJHctM3cv1Ce-YWan5yNkVWM5EGMwIzMiRTNlNGMiFDOwgzMmFDZmFTY1MmNy8CX1EzLchDMxIDMy8CXn9Gbi9CXzV2Zh1WavwVbvNmLvR3YxUjL0M3Lc9CX6MHc0RHaiojIsJye.gif)
View Code
本解析器的主要功能是将指定XML文档中的数据全部取出,并且将数据封装成LinkMan类的对象保存在List集合中,由于SAX解析采用的顺序的方式,所以每次操作都要对当前的操作节点进行判断,并且将指定的数据取出,最后所有的数据可以通过getAll()方法返回。
【定义Activity程序】
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsISPrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdsATOfd3bkFGazxCMx8VesATMfhHLlN3XnxCMwEzX0xiRGZkRGZ0Xy9GbvNGLpZTY1EmMZVDUSFTU4VFRR9Fd4VGdsYTMfVmepNHLrJXYtJXZ0F2dvwVZnFWbp1zczV2YvJHctM3cv1Ce-YWan5yNkVWM5EGMwIzMiRTNlNGMiFDOwgzMmFDZmFTY1MmNy8CX1EzLchDMxIDMy8CXn9Gbi9CXzV2Zh1WavwVbvNmLvR3YxUjL0M3Lc9CX6MHc0RHaiojIsJye.gif)