解析来自不同来源的XML

问题描述:

我正在编写解析来自不同来源的RSS提要的Android应用程序。我正在做的是,在远程服务器上,我将所有RSS源合并为一个大XML文件,然后在设备上解析(使用SAX解析器),而不是单独访问每个站点。所以我基本上是缓存RSS提要的性能,它工作得很好。解析来自不同来源的XML

我想要做的是给用户选择他们想看到哪些饲料来源。因此,如果我缓存站点A,B,C,用户可以选择他们只想看到站点A和C.我不确定设置XML缓存的最佳方式。我可以创建较小的XML文件,也可以保留一个大的XML文件,并在解析时删除用户不需要的项目。

不确定移动设备的最佳设计。解析一堆较小的文件或一个大文件会更高效吗?

+0

我看不出在服务器上只有一个源是“更好”的(这肯定可能是缓存)。虽然多个来源需要更多的连接,但它可能是一个相对较少的数量,而拆分来源不应包含更多数据 - 例如,个人获取=仅需要下载的数据 - 除非合并的源代码在合并馈送数据方面做了一些非常聪明的事情。 – 2011-10-28 17:52:25

我看到将数据分割成不同文件的一个好处是它是一次性操作。所以当你从服务器第一次将它分解成不同的文件时(这可能会很慢),但是如果你重新使用这些数据,你可以简单地从文件中加载,而且你不必在以后过滤。因此,当选择A,B或C选项时,它对用户来说显得更加快速。

但是,如果您只使用一次数据,则不再会获得此优势。

+0

我几乎每次请求都只使用一次数据。数据经常改变方式为一次性使用。 –

+0

在这种情况下,是否可以拆分服务器上的数据并发送多个文件?我认为这仍然可以节省设备上的处理 – Craigy

+0

是的,肯定的是,听起来像将它们分成不同的文件是最好的方法。 –