IT開發/UI設計/運營/影視特效培訓機構

400-111-8989

熱門課程

Android讀寫XML

  • 發布:IT培訓
  • 來源:IT學習資料
  • 時間:2018-06-29 17:13

XML 經常用作 Internet 上的一種數據格式,其文件格式想必大家都比較清楚,在這里我結合Android平臺,來說明Android SDK提供的讀寫XML的package。

首先介紹下Android SDK與Java SDK在讀寫XML文件方面,數據包之間的關系。Android 平臺最大的一個優勢在于它利用了 Java 編程語言。Android SDK 并未向標準 Java Runtime Environment (JRE) 提供一切可用功能,但它支持其中很大一部分功能。Java 平臺支持通過許多不同的方式來使用 XML,并且大多數與 XML 相關的 Java API 在 Android 上得到了完全支持。舉例來說,Java 的 Simple API for XML (SAX) 和 Document Object Model (DOM) 在 Android 上都是可用的,這些 API 多年以來一直都是 Java 技術的一部分,較新的 Streaming API for XML (StAX) 在 Android 中并不可用。但是, Android 提供了一個功能相當的庫。最后,Java XML Binding API 在 Android 中也不可用,這個 API 已確定可以在 Android 中實現。Android SDK提供了如下package來支持XML的讀寫:

包 功能介紹

javax.xml根據 XML 規范定義核心 XML 常量和功能。

javax.xml.parsers提供DOM和SAX方法解析XML文檔

org.w3c.domW3C提供的使用DOM方法讀取XML

org.xml.sax提供核心SAX APIs

org.xmlpull.v1

額外補充說明下,在android.util數 據包中也提供了一個類Xml,不過這個類就是把以上package簡單封裝了下。

讀取XML主要有2種方法:DOM與SAX(Simple API for XML),在這里對這2種方法分別加以說明。

DOM(文檔對象模型),為XML文檔的解析定義了一組接口,解析器讀入整個文檔,然后構造一個駐留內存的樹結構,然后代碼就可以使用DOM接口來 操組整個樹結構,其他點如下:

優點:整個文檔樹都在內存當中,便于操作;支持刪除、修改、重新排列等多功能。

缺點:將整個文檔調入內存(經常包含大量無用的節點),浪費時間和空間。

使用場合:一旦解析了文檔還需要多次訪問這些數據,而且資源比較充足(如內存、CPU等)。

為了解決DOM解析XML引起的這些問題,出現了SAX。SAX解析XML文檔為事件驅動,詳細說明請閱讀Android讀寫XML(中)–SAX。當解析器發現元素開始、元素結束,文本、文檔的開始或者結束時,發送 事件,在程序中編寫響應這些事件的代碼,其特點如下:

優點:不用事先調入整個文檔,占用資源少。尤其在嵌入式環境中,極力推薦采用SAX進行解析XML文檔。

缺點:不像DOM一樣將文檔長期駐留在內存,數據不是持久的,事件過后,如沒有保存數據,那么數據就會丟失。

使用場合:機器性能有限,尤其是在嵌入式環境,如Android,極力推薦采用SAX進行解析XML文檔。

大多數時間,使用 SAX 是比較安全的,并且 Android 提供了一種傳統的 SAX 使用方法,以及一個便捷的 SAX 包裝器。如果XML文檔比較小,那么 DOM 可能是一種比較簡單的方法。如果XML文檔比較大,但只需要文檔的一部分,則 XML Pull 解析器可能是更為有效的方法。最后對于編寫 XML,Pull 解析器包也提供了一種便捷的方法,詳細說明請閱讀Android讀寫XML(下)——數據寫入XML文檔。因此,無論我們的 XML 需求如何,Android 都能在一定程度上滿足我們的需求。

預約申請免費試聽課

填寫下面表單即可預約申請免費試聽!怕錢不夠?可就業掙錢后再付學費! 怕學不會?助教全程陪讀,隨時解惑!擔心就業?一地學習,可全國推薦就業!

上一篇:iphone開發之toolbar的使用
下一篇:Android、Intent的深入解析

達內it學習路線?如何學好it?

學編程需要什么基礎嗎?

Python、Java、C++該學哪一個

學編程需要什么基礎嗎

  • 掃碼領取資料

    回復關鍵字:視頻資料

    免費領取 達內課程視頻學習資料

  • 視頻學習QQ群

    添加QQ群:1143617948

    免費領取達內課程視頻學習資料

Copyright ? 2021 Tedu.cn All Rights Reserved 京ICP備08000853號-56 京公網安備 11010802029508號 達內時代科技集團有限公司 版權所有

選擇城市和中心
江西省

貴州省

廣西省

海南省

中出人妻中文字幕无码