sax和dom解析xml等檔案的區別

2021-07-15 18:16:35 字數 555 閱讀 8804

可以使用sax來查詢或者閱讀xml文件。sax可以快速掃瞄乙個大型的xml文件,當它找到查詢標準時就會立即停止,然後再處理之。dom是把xml全部載入到記憶體中建立一棵樹之後再進行處理。所以dom不適合處理大型的xml【會產生記憶體的急劇膨脹】。

同理,dom的弱項就是sax的強項,sax不必把全部的xml都載入到記憶體中。但是sax的缺點也很明顯,它只能對檔案順序解析一遍,不支援對檔案的隨意訪問。sax也僅僅能夠讀取檔案的內容,並不能修改內容。dom可以隨意修改檔案樹,從而修改了xml檔案。

上圖中描述了sax和dom的不同。

sax適於處理下面的問題:

1、對大型檔案進行處理;

2、只需要資料夾的部分內容,或者只需從檔案中得到特定資訊。

3、想建立自己的物件模型的時候。

dom適於處理下面的問題:

1、需要對檔案進行修改;

2、需要隨機對檔案進行訪問

SAX和DOM解析XML區別

dom和sax是應用中操縱xml文件的兩種主要api,它們分別解釋如下 dom,即document object model,中文叫文件物件模型。dom是w3c定義的標準文件物件模型,是乙個與作業系統和程式語言無關的 用於記憶體儲存和操作層次化文件的模型。當按 照dom模型解析xml文件時,就會在記...

SAX解析xml檔案

public class xmlsaxactivity extends activity class mycontenthandlerlistener implements onclicklistener catch exception e public class downloadhelper c...

xml檔案解析SAX

size large xml檔案解析 xml檔案解析有四種方式,color blue 1.dom生成和解析xml文件 sax是基於事件流的解析 2.sax生成和解析xml文件 基於xml文件樹結構的解析 3.dom4j生成和解析xml文件 4.jdom生成和解析xml color 本文章用第一種方法...