成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Android XML讀寫(七)

移動開發 Android
Android 并未提供對 Java StAX API 的支持。但是,Android 確實附帶了一個 pull 解析器,其工作方式類似于 StAX。它允許您的應用程序代碼從解析器中獲取事件,這與 SAX 解析器自動將事件推入處理程序相反。清單 10 顯示了提要解析接口的一個 pull 解析器實現。

與***個 SAX 示例類似,以上代碼完全沒有特定于 Android 的地方。DOM 解析器將所有 XML 文檔讀取到內存中,然后允許您使用 DOM API 遍歷 XML 樹、檢索所需的數據。這是非常直觀的代碼,并且,在某些方面比基于 SAX 的實現更加簡單。但是,DOM 通常更加占用內存,因為一切內容都會先讀取到內存中。這對于運行 Android 的移動設備來說是一個問題,但是當 XML 文檔始終保持很小的大小時是可行的。這可能意味著,Android 的開發人員會認為 SAX 解析在 Android 應用程序上更加常見,因此為它提供了額外的實用工具。Android 還提供了另一種類型的 XML 解析器,它就是 pull 解析器。

XML pull 解析器

如前所述,Android 并未提供對 Java StAX API 的支持。但是,Android 確實附帶了一個 pull 解析器,其工作方式類似于 StAX。它允許您的應用程序代碼從解析器中獲取事件,這與 SAX 解析器自動將事件推入處理程序相反。清單 10 顯示了提要解析接口的一個 pull 解析器實現。

清單 10. 基于 Pull 解析器的實現

java代碼:

  1. public class XmlPullFeedParser extends BaseFeedParser { 
  2. public XmlPullFeedParser(String feedUrl) { 
  3. super(feedUrl); 
  4. public List< Message > parse() { 
  5. List< Message > messages = null
  6. XmlPullParser parser = Xml.newPullParser(); 
  7. try { 
  8. // auto-detect the encoding from the stream 
  9. parser.setInput(this.getInputStream(), null); 
  10. int eventType = parser.getEventType(); 
  11. Message currentMessage = null
  12. boolean done = false
  13. while (eventType != XmlPullParser.END_DOCUMENT && !done){ 
  14. String name = null
  15. switch (eventType){ 
  16. case XmlPullParser.START_DOCUMENT: 
  17. messages = new ArrayList< Message >(); 
  18. break
  19. case XmlPullParser.START_TAG: 
  20. name = parser.getName(); 
  21. if (name.equalsIgnoreCase(ITEM)){ 
  22. currentMessage = new Message(); 
  23. else if (currentMessage != null){ 
  24. if (name.equalsIgnoreCase(LINK)){ 
  25. currentMessage.setLink(parser.nextText()); 
  26. else if (name.equalsIgnoreCase(DESCRIPTION)){ 
  27. currentMessage.setDescription(parser.nextText()); 
  28. else if (name.equalsIgnoreCase(PUB_DATE)){ 
  29. currentMessage.setDate(parser.nextText()); 
  30. else if (name.equalsIgnoreCase(TITLE)){ 
  31. currentMessage.setTitle(parser.nextText()); 
  32. break

 

責任編輯:閆佳明 來源: my.eoe.cn
相關推薦

2013-06-09 10:18:29

Android開發XML讀寫XML解析

2013-06-09 10:25:56

Android開發XML讀寫XML解析

2013-06-09 10:37:53

Android開發XML讀寫XML解析

2013-06-09 11:31:13

Android開發XML讀寫XML解析

2013-06-09 10:04:35

Android開發XML讀寫XML解析

2013-06-09 12:49:15

Android開發XML讀寫XML解析

2013-06-09 13:07:23

Android開發XML讀寫XML解析

2011-11-08 10:01:53

TinyXML

2013-06-08 13:02:11

Android開發XML解析

2013-06-08 11:04:18

Android開發Pull解析XMLAndroid XML

2022-03-24 12:15:50

MySQL數據庫讀寫分離

2010-12-23 09:11:17

讀寫Android文件

2013-06-08 13:07:54

Android開發Android UILayout XML屬

2013-06-08 13:18:50

Android開發XML構造技巧XML解析

2013-06-08 12:49:03

Android開發XML定義菜單

2013-04-01 14:35:10

Android開發Android自定義x

2013-06-08 13:29:27

Android開發DOM讀取XMLXML解析

2010-01-25 18:22:33

Android使用XM

2013-06-08 13:37:28

Android開發XML解析Pull方式

2013-06-08 11:13:00

Android開發XML解析
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲人成人一区二区在线观看 | 亚洲黄色视屏 | 欧美一级黄色片 | 久久久91精品国产一区二区三区 | 羞羞视频免费在线观看 | 成人精品视频99在线观看免费 | 欧美日韩一区二区三区四区 | 国产精品毛片一区二区三区 | 免费成人高清在线视频 | 成人在线亚洲 | 久久夜夜 | 91精品国产乱码久久久 | 日韩国产精品一区二区三区 | 国产清纯白嫩初高生在线播放视频 | 亚洲欧美第一视频 | 欧洲免费视频 | 成人日韩av| 7777在线视频免费播放 | 黄色国产视频 | 成人在线免费电影 | 欧美一区二区三区在线 | 欧美九九九| 国产精品91视频 | 99这里只有精品视频 | 国产一区二区三区 | 人人玩人人干 | 国产一区二区电影 | 免费一级片 | 操操操操操 | 国产人免费人成免费视频 | 亚洲综合首页 | 久久一区二区三区四区五区 | a级片在线观看 | 91精品国产综合久久婷婷香蕉 | 国产伦精品一区二区三区精品视频 | 日本三级全黄三级三级三级口周 | 日本a∨精品中文字幕在线 亚洲91视频 | 亚洲精品视频免费看 | 人人澡人人射 | 国产精品久久久久久久久久久久冷 | 一区二区三区四区在线视频 |