DOM解析和SAX解析

ahesihua發表於2011-10-28

簡述下DOM(文件物件模型)和SAX(用於XML的簡單API)的聯絡和區別:

1、    一般情況下,如果要處理較大的文件,用DOM形式時因生成樹結構將會消耗大量記憶體,但是在實際運用當中,如果關心元素之間的聯絡時,因樹形結構提供了對它們上下文的訪問操作,文件物件模型應該說是首選;

   如果只是對文件中個別元素感興趣,在文件較大的時候,為了減少記憶體開銷,採用SAX解析器應該算是比較好的一種選擇,它在執行時解析結點,不必看到所有的樹型結構,它在解析XML輸入的構件時就報告事件,但不會以任何方式儲存文件

2、DOM解析器是建立在SAX解析器基礎之上的,它在接受到SAX解析器事件時建立DOM樹。

3、運用DOM的好處有:

(1)、對上下文訪問方向

(2)、對元素操作的方便性上 

 

DOM解析器常用於 XML文件需要頻繁的改變的服務中。
 DOM採用建立樹形結構的方式訪問XML文件,而SAX採用的事件模型。
DOM是用與平臺和語言無關的方式表示XML文件的官方W3C標準

相關文章