可以使用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 本文章用第一種方法...