dom和sax是應用中操縱xml文件的兩種主要api,它們分別解釋如下:
dom,即document object model,中文叫文件物件模型。dom是w3c定義的標準文件物件模型,是乙個與作業系統和程式語言無關的、用於記憶體儲存和操作層次化文件的模型。當按 照dom模型解析xml文件時,就會在記憶體中構造乙個對應的dom樹,它可以用於不同節點之間的遍歷。然而,在遍歷之前必須先完成dom樹的構造。因此, 在處理規模較大的xml文件時就很耗記憶體,占用資源較多。尤其是只需要操作文件中一小部分時效率很低。
sax,即****** api for xml的簡稱,中文叫xml簡單應用程式介面。它是乙個事實上的標準。與dom不同的是,它是用事件驅動模型。解析xml文件時每遇到乙個開始或者結束標 籤、或者屬性、或者一條指令時,程式就產生乙個事件來進行相應的處理。所以在操作文件之前不需要對整個文件進行解析。實際上,文件的各個部分可以在進行解 析的同時進行操作。因此,sax相對於dom來說更適合操作大文件。
原位址
DOM解析和SAX解析區別
1 操作 dom 將所有檔案讀取到記憶體中,形成dom樹,如果檔案量過大,澤無法使用。sax 順序讀入所需要的檔案內容,不會一次性全部讀取,不受檔案大小限制。2 訪問限制 dom dom樹在記憶體中形成,可隨意存放或讀取檔案樹的任何部分,沒有次數限制 sax 由於採用部分讀取,只能對檔案按順序從頭到...
SAX與DOM解析XML的區別
解析xml有四種方法 dom,sax,dom4j,jdom.我們主要學了兩種 dom和sax.dom適於解析比較簡單的xml而sax則適於解析較複雜的xml檔案。各有各的好。dom和sax的不同 1.dom是基於記憶體的,不管檔案有多大,都會將所有的內容預先裝載到記憶體中。從而消耗很大的記憶體空間。...
SAX與DOM解析XML的區別
解析xml有四種方法 dom,sax,dom4j,jdom.我們主要學了兩種 dom和sax.dom適於解析比較簡單的xml而sax則適於解析較複雜的xml檔案。各有各的好。dom和sax的不同 1.dom是基於記憶體的,不管檔案有多大,都會將所有的內容預先裝載到記憶體中。從而消耗很大的記憶體空間。...