在android中有像DOM,SAX和XmlPull解析的方法。我如何決定在特定情況下使用哪種解析?請在特定情況下建議哪一個更優化Android XML解析技術選擇
1
A
回答
4
我給你提供一些關於SAX和Dom Parser的信息。在Java中
SAX
SAX XML解析器代表的XML解析的簡單API。這是基於事件的XML解析,它逐步解析XML文件,非常適合大型XML文件。 SAX XML解析器在遇到開放標記,元素或屬性時觸發事件,並且解析工作相應地進行。建議使用SAX XML解析器來解析Java中的大型xml文件,因爲它不需要使用Java加載整個XML文件,並且可以以小部分讀取大型XML文件。 Java爲SAX解析器提供了支持,並且您可以使用SAX解析器解析Java中的任何xml文件,我已經介紹了在這裏使用SAX解析器讀取xml文件的示例。在java中使用SAX解析器的一個缺點是使用SAX解析器在Java中讀取XML文件需要比較DOM解析器中的更多代碼。 DOM和SAX XML解析器之間
區別就在這裏是DOM解析器和SAX解析器之間幾乎沒有高水平的差別在Java中:在內存
1)DOM解析器加載整個XML文檔,而SAX只加載XML文件中的一小部分記憶。
2)DOM解析器比SAX更快,因爲它訪問內存中的整個XML文檔。
3)Java中的SAX解析器比DOM解析器更適合大型XML文件,因爲它不需要太多內存。
4)DOM解析器在文檔對象模型上工作,而SAX是基於事件的xml解析器。
這就是所有關於SAX和DOM解析器在Java中的差異,現在取決於你選擇哪個XML解析器。如果XML文件足夠小,建議使用DOM解析器而不是SAX解析器,如果您不知道要處理的xml文件的大小,或者它們很大,則使用SAX解析器。
XML解析也有XMLPullParser,但我沒有更多的想法,因爲我沒有使用它。
相關問題
- 1. BigData分析選擇技術棧
- 2. RIA技術選擇
- 3. 解析值技術需要
- 4. 選擇一個大型項目的解析技術
- 5. 如何選擇Ajax技術
- 6. 選擇數據庫技術
- 7. RIA技術的選擇
- 8. Web App技術選擇
- 9. 技術選擇,數據庫
- 10. 選擇性XML解析
- 11. 解決技術
- 12. 技術用於在JavaScript編寫XML解析器
- 13. Android NFC技術
- 14. 用於序列處理或解析的首選語言/技術
- 15. SaaS - 最好的技術選擇
- 16. 選擇正確的技術和環境
- 17. 選擇跨平臺的GUI技術
- 18. Silverlight或jQuery?選擇未來的技術
- 19. 需要幫助選擇技術
- 20. Android解析XML
- 21. Android解析XML
- 22. Android XML解析
- 23. ANDROID:解析XML
- 24. XML解析Android
- 25. Android的JPanel技術
- 26. Android對等技術
- 27. Android調試技術
- 28. 技術需要編寫一個算術表達式解析器
- 29. C#的技術分析Math.Round
- 30. C#解析Xml選擇節點
您還可以使用[XStream](http://xstream.codehaus.org/)來繞過自己解析xml。雖然取決於你在做什麼,但並不總是最好的解決方案。 – atomman