java - 如何只下载 rss 部分

标签 java android http rss

如何只下载RSS的一部分?

我需要一些方法来实现这一目标。我可以理解“最后修改的页面”来阻止下载,但我想知道我是否可以只下载 RSS 提要中的新项目?

最佳答案

如果您只需要 RSS 提要的“一部分”(或扩展为任何 XML 文档),您需要一个拉式解析器。拉式解析器是一种解析器,可以让决定要解析多少 XML。例如,在包含 100 个项目的 RSS 提要中,您可能希望在前 25 个项目之后停止解析。

XmlPullParser是你需要调查的。

现在,回到您只想下载新源的情况。是的你可以。方法如下:

  1. 首次运行应用程序时,您会将 RSS 提要中的所有项目保存到某个本地存储(可能是 SQLite 或作为 .xml 文件)。
  2. 下次运行应用程序时,从本地存储中检索最新项目。
  3. 连接到提要 URL 并开始使用拉解析器进行解析。
  4. 不断将找到的每个新项目添加到本地存储中。
  5. 一旦找到从本地存储中检索到的最新项目,就停止解析。您确信您拥有除此之外的所有项目。

为了完整起见,还有一个推送解析器。推送解析器是一种解析器,一旦启动,就会不断解析 XML,直到到达文件末尾或生成某些异常。 SAXParser是一个推送解析器。

关于java - 如何只下载 rss 部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28791206/

相关文章:

android - 使用另一个布局创建进度对话框

android - 无法使用带有 stripwhitespace 选项的 libGDX 纹理打包器打包分辨率为 800x800 的图像?

android - 清除 ListView 中的 Android 编辑文本

java - 将 'java.lang.ClassNotFoundException: com.mysql.jdbc.Driver' 添加到构建路径并使用 Class.forName() 注册后如何修复它;

java - Android 的 Java 版本与 Java SE 版本有何关系?

java - 反转自己的 Java LinkedList 实现的 Void 方法

Java 套接字输出延迟了第一条消息

java - 在 Visual Studio 2015 上运行 xamarin 时出现问题 "Could not locate Java 6 or 7 SDK"

javascript - 如何解决 Access-Control-Allow-Origin 错误

Python 2.7 中用于 HTTP GET header 的正则表达式匹配