关于Android中XML解析方式
XML解析一般有三種方式:DOM 、SAX、PULL。
SAX解析器:它是一種基于事件的解析器,它的核心是事件處理模式,主要是圍繞著事件源以及事件處理器來工作。當(dāng)事件源產(chǎn)生事件后,調(diào)用事件處理器相應(yīng)的處理方法。它的特點解析速度快,占用內(nèi)存小。非常適合在Android移動設(shè)備中使用。
DOM解析器:它是基于樹形結(jié)構(gòu)的節(jié)點或信息片段的集合,允許開發(fā)人員使用DOM API遍歷XML樹、檢索所需數(shù)據(jù)。分析該結(jié)構(gòu)通常需要加載整個文檔和構(gòu)造樹形結(jié)構(gòu)。由于DOM在內(nèi)存中以樹形結(jié)構(gòu)存放,因此檢索和更新效率會更高。但是對于特別大的文檔,解析和加載整個文檔會消耗資源、
PULL解析器:它的運行方式和SAX類似,都是基于事件的模式。在pull解析過程中,我們需要自己獲取產(chǎn)生的事件然后做相應(yīng)的操作,而不像SAX那樣有處理器觸發(fā)一種事件的方法,執(zhí)行我們的代碼。pull解析小巧輕便,解析速度快,簡單易用。在Android系統(tǒng)內(nèi)部解析各種xml是也是用的pull解析。pull解析允許你的應(yīng)用程序代碼主動從解析器中獲取事件,pull是一個while循環(huán)隨時可以跳出,而sax只要解析就必須解析完成。
?
我如果解析上面的數(shù)據(jù)javabean已經(jīng)寫好了
A:使用SAX解析文件
SAXParserFactory spf = SAXParserFactory.newInstance();
SAXParser saxparser = spf.newSAXparser(); //創(chuàng)建解析器
//設(shè)置解析器的相關(guān)特性,true表示開啟命名空間特性
saxParser.setProperty("http:"//)
XMLContentHanler handler = new XMLContentHandler();
saxParser.parse(inStream,handler);
? inStream.close();
return handler.getPersons();
總結(jié)
以上是生活随笔為你收集整理的关于Android中XML解析方式的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 电脑显示器无信号怎么办 电脑屏幕黑屏?怎
- 下一篇: Android中的数据存储方式