For investors
股價(jià):
5.36 美元 %For investors
股價(jià):
5.36 美元 %認(rèn)真做教育 專心促就業(yè)
【android中解析XML androidxml屬性大全】Android中有哪幾種解析xml的類,官方推薦哪種?以及它們的原理和區(qū)別,達(dá)內(nèi)android培訓(xùn)技術(shù)專家整理。
方式一:DOM解析
優(yōu)點(diǎn):
1、XML樹在內(nèi)存中完整存儲(chǔ),因此可以直接修改其數(shù)據(jù)和結(jié)構(gòu)。
2、可以通過該解析器隨時(shí)訪問XML樹中的任何一個(gè)節(jié)點(diǎn)。
3、DOM解析器的API在使用上也相對比較簡單。
缺點(diǎn):
如果XML文檔體積比較大時(shí),將文檔讀入內(nèi)存是非常消耗系統(tǒng)資源的。
使用場景:
DOM是用與平臺(tái)和語言無關(guān)的方式表示XML文檔的官方W3C標(biāo)準(zhǔn)。DOM是以層次結(jié)構(gòu)組織的節(jié)點(diǎn)的集合。這個(gè)層次結(jié)構(gòu)允許開發(fā)人員在樹中尋找特定信息。分析該結(jié)構(gòu)通常需要加載整個(gè)文檔和構(gòu)造層次結(jié)構(gòu),然后才能進(jìn)行任何工作。DOM是基于對象層次結(jié)構(gòu)的。
方式二:SAX解析
優(yōu)點(diǎn):
SAX對內(nèi)存的要求比較低,因?yàn)樗岄_發(fā)人員自己來決定所要處理的標(biāo)簽。特別是當(dāng)開發(fā)人員只需要處理文檔中所包含的部分?jǐn)?shù)據(jù)時(shí),SAX這種擴(kuò)展能力得到了更好的體現(xiàn)。
缺點(diǎn):
用SAX方式進(jìn)行XML解析時(shí),需要順序執(zhí)行,所以很難訪問到同一文檔中的不同數(shù)據(jù)。此外,在基于該方式的解析編碼過程也相對復(fù)雜。
使用場景:
對于含有數(shù)據(jù)量十分巨大,而又不用對文檔的所有數(shù)據(jù)進(jìn)行遍歷或者分析的時(shí)候,使用該方法十分有效。該方法不用將整個(gè)文檔讀入內(nèi)存,而只需讀取到程序所需的文檔標(biāo)簽處即可。
方式三:Xmlpull解析
AndroidSDK提供了xmlpullapi,xmlpull和sax類似,是基于流(stream)操作文件,然后根據(jù)節(jié)點(diǎn)事件回調(diào)開發(fā)者編寫的處理程序。因?yàn)槭腔诹鞯奶幚?,因此xmlpull和sax都比較節(jié)約內(nèi)存資源,不會(huì)象dom那樣要把所有節(jié)點(diǎn)以對橡樹的形式展現(xiàn)在內(nèi)存中。
xmlpull比sax更簡明,而且不需要掃描完整個(gè)流。
相關(guān)android中解析XML以及androidxml屬性大全的內(nèi)容就先介紹奧這里,如果還有其他疑問的話,請繼續(xù)關(guān)注達(dá)內(nèi)官網(wǎng),我們隨時(shí)為您整理更多android信息。
【免責(zé)聲明】本文部分系轉(zhuǎn)載,轉(zhuǎn)載目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對其真實(shí)性負(fù)責(zé)。如涉及作品內(nèi)容、版權(quán)和其它問題,請?jiān)?0日內(nèi)與聯(lián)系我們,我們會(huì)予以更改或刪除相關(guān)文章,以保證您的權(quán)益!