DOM解析和SAX解析区别

1操作:

DOM:将所有文件读取到内存中,形成DOM树,如果文件量过大,泽无法使用。

SAX:顺序读入所需要的文件内容,不会一次性全部读取,不受文件大小限制。

2访问限制:

DOM:DOM树在内存中形成,可随意存放或读取文件树的任何部分,没有次数限制;

SAX:由于采用部分读取,只能对文件按顺序从头到尾解析,不支持对文件的随意读取。

3修改:

DOM:可任意修改文件树;

SAX:不能修改;

4复杂度:

DOM:易于理解,易于开发;

SAX:开发比较复杂,需要用户自定义事件处理器(继承DefaultHandler类);

5对象模型

DOM:系统为使用者自动建立DOM树,XML对象模型由系统提供;

SAX:对开发人员更加灵活,可用SAX建立自己的XML模型;

DOM解析适合于对文件进行修改和随机存取的操作,但不适合大文件的操作。

SAX解析采用部分读取的方式,所以可以处理大型文件,而且只需要从文件中读取特定内容。SAX解析可以由用户建立自己i的对象模型。

JDOM:DOM修改文件的优点+SAX读取快速的优点

相关推荐