下午好(取决于你住在哪里)!
我对 Android 开发相当陌生,目前正在努力将功能从现有的 iOS 应用程序转移到 Android 上。此功能的一部分是解析包含大约 500 个条目的“大”(约 13,000 行)RSS XML 文件。我花了 10 到 15 个小时研究 Android 上的 XML 解析并尝试了主要的 XML 解析器:DOM、SAX 和 Pull-parsing。这是我的结果,在我的盒子上的模拟器中运行(32 位 Windows Vista,2.2 GHz 双 CPU,3 GB RAM):
萨克斯:~6:00 分钟
拉解析:~4:00 分钟
DOM:超过 4:00 分钟,但在我编写实现编码时没有计时。
我也从 github 尝试了这个 RSS 阅读器,但花了 >10:00 分钟:
https://github.com/matshofman/Android-RSS-Reader-Library
SAX、PP 和 DOM 的实现都取自 stackoverflow.com 线程,所以我相当有信心我没有在它们中做任何非标准的事情(不过,我不排除这种可能性)。我决定吸引更多、更有经验的人群来了解我还能尝试什么。
我无法控制文件的格式。如果我要实现这个端到端,我只需编写一个 Web 服务,它会在服务器上完成所有繁重的工作,然后发送一个小的、紧凑的 JSON 序列化列表。相反,我有 13K 行文件。:)
对我能做什么有任何见解吗?这似乎是一个相当普遍的问题,但大多数回复只是说尝试使用不同的主要 XML 解析器之一。就我而言,我已经尝试了所有三个,即使是最快的也似乎太慢了。
我究竟做错了什么?在Android上通过网络进行XML解析时,人们通常会遇到任何正常的“新手”问题吗???
提前感谢您提供的任何帮助!