Android XML读写(三)

移动开发 Android
每个解析器实现都需要提供一个 URL 给 Androidster 提要,并使用它打开一个到 Androidster 站点的 HTTP 连接。这一常见行为自然是在 Java 代码中建模,我们使用了一个抽象基类。

消息基本上是相当直观的。通过允许日期和链接作为简单的对象被访问,同时将它们表示为较强类型的对象(de >java.util.Datede > 和 de >java.net.URLde >),它隐藏了一些内部状态。它是一个典型的 Value Object,因此它基于其内部状态实现了 de >equals()de > 和 de >hashCode()de >。它还实现了 de >Comparablede > 接口,因此您可以使用它进行排序(按日期)。在实践中,提要中的数据始终是有序的,因为没有必要再进行排序。

每个解析器实现都需要提供一个 URL 给 Androidster 提要,并使用它打开一个到 Androidster 站点的 HTTP 连接。这一常见行为自然是在 Java 代码中建模,我们使用了一个抽象基类,所示。

基本提要解析器类

java代码:

  1. public abstract class BaseFeedParser implements FeedParser { 
  2. // names of the XML tags 
  3. static final String PUB_DATE = "pubDate"
  4. static final String DESCRIPTION = "description"
  5. static final String LINK = "link"
  6. static final String TITLE = "title"
  7. static final String ITEM = "item"
  8. final URL feedUrl; 
  9. protected BaseFeedParser(String feedUrl){ 
  10. try { 
  11. this.feedUrl = new URL(feedUrl); 
  12. catch (MalformedURLException e) { 
  13. throw new RuntimeException(e); 
  14. protected InputStream getInputStream() { 
  15. try { 
  16. return feedUrl.openConnection().getInputStream(); 
  17. catch (IOException e) { 
  18. throw new RuntimeException(e); 

基类存储 de >feedUrlde > 并使用它打开了一个 de >java.io.InputStreamde >。如果出现任何差错,它会抛出一个 de >RuntimeExceptionde >,造成应用程序出现故障。基类还为标记的名称定义了一些简单的常量。显示了提要中的一些示例内容,以便于您理解这些标记的重要性。

示例 XML 提要

java代码:

  1. < ?xml version="1.0" encoding="UTF-8"> 
  2. < !-- generator="FeedCreator 1.7.2" -- > 
  3. < rss version="2.0" > 
  4. < channel > 
  5. < title >android_news< /title > 
  6. < description >android_news< /description > 
  7. < link >< /link > 
  8. < lastBuildDate >Sun, 19 Apr 2009 19:43:45 +0100< /lastBuildDate > 
  9. < generator >FeedCreator 1.7.2< /generator > 
  10. < item > 
  11. < title >Samsung S8000 to Run Android, Play DivX, Take Over the World< /title > 
  12. < link >< /link > 
  13. < description >More details have emerged on the first Samsung handset 
  14. to run Android. A yet-to-be announced phone called the S8000 is being 
  15. reported ...< /description > 
  16. < pubDate >Thu, 16 Apr 2009 07:18:51 +0100< /pubDate > 
  17. < /item > 
  18. < item > 
  19. < title >Android Cupcake Update on the Horizon< /title > 
  20. < link >< /link > 
  21. < description >After months of discovery and hearsay, the Android 
  22. build that we have all been waiting for is about to finally make it 
  23. out ...< /description > 
  24. < pubDate >Tue, 14 Apr 2009 04:13:21 +0100< /pubDate > 
  25. < /item > 
  26. < /channel > 
  27. < /rss >
责任编辑:闫佳明 来源: my.eoe.cn
相关推荐

2013-06-09 13:07:23

Android开发XML读写XML解析

2013-06-09 10:04:35

Android开发XML读写XML解析

2013-06-09 12:49:15

Android开发XML读写XML解析

2013-06-09 12:53:05

Android开发XML读写XML解析

2013-06-09 11:31:13

Android开发XML读写XML解析

2013-06-09 10:37:53

Android开发XML读写XML解析

2013-06-09 10:18:29

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

2010-12-23 09:11:17

读写Android文件

2013-06-08 13:07:54

Android开发Android UILayout XML属

2013-06-08 12:49:03

Android开发XML定义菜单

2013-06-08 13:18:50

Android开发XML构造技巧XML解析

2013-06-08 13:37:28

Android开发XML解析Pull方式

2010-01-25 18:22:33

Android使用XM

2013-06-08 11:13:00

Android开发XML解析

2013-06-08 13:29:27

Android开发DOM读取XMLXML解析

2013-04-01 14:35:10

Android开发Android自定义x

2011-04-12 14:43:08

XML
点赞
收藏

51CTO技术栈公众号