【问题标题】:How big xml file we can parse in iPhone application我们可以在 iPhone 应用程序中解析多大的 xml 文件
【发布时间】:2011-08-17 23:42:22
【问题描述】:

我将在服务器上保存 xml 文件。它将存储大约 600 家商店的信息。信息包括姓名、地址、营业时间、坐标。那么是否可以将整个文件解析到iphone中然后根据坐标选择最近的商店?

我正在考虑处理时间和内存使用情况

请推荐

【问题讨论】:

  • 您可能应该自己分析内存和时间,并将结果作为一个非常相对的意见来检查。
  • 但是如果可行的话,我会相应地创建我的数据库并创建 xml 文件。所以在此之前我需要知道想法本身的可行性。
  • 正如@Praveen 建议的那样,尝试使用工具来检查 CPU 内存使用情况,但我建议您将 xml 文件拆分为更小的块,然后使用“分页”来附加更多数据。我相信您已经知道“不要忘记使用 wi-fi 和蜂窝网络在 iOS 设备上测试您的代码。

标签: iphone xml


【解决方案1】:

我这样做的方法是编写一个 Web 服务并将坐标传递给它,然后只下载特定半径内的坐标。始终尝试将尽可能少的数据下载到 iPhone(尤其是 xml 数据)

【讨论】:

  • 是的,这是另一个想法。但我不知道如何让网络服务做这件事。
  • 感谢 Praveen,我实际上将它用于我编写的停车应用程序,并且效果很好。
  • @Manjinder rails 将允许您编写一个非常简单的 Web 服务来执行此操作。
  • @ennukiller 感谢您的建议。好的,我正在尝试使用 Rails 制作网络服务。虽然我从来没有这样做过。无论如何。所以正如你所说,你也实现了这种应用程序。所以我的网络服务器将获取坐标并查询 mysql 数据库,它会返回相关商店的 xml 文件。但是网络服务器如何知道离给定坐标最近的商店。你能给我一些指导或你的经验吗?这将是很大的帮助,真的很受欢迎
  • @Manjinder 你的数据库需要包含经纬度和每个商店
【解决方案2】:

【讨论】:

  • 所以你建议我使用 AQXmlparser?我已经使用 GData 解析器来解析同一应用程序中的其他文件。我可以在同一个应用程序中使用两个解析器吗?
【解决方案3】:

一个简单的解决方案是将它们分组到以某种方式相关的集群中,可能是按位置。您已经在服务器上拥有一个 XML,因此只需将它们分成 3 组相关的存储,大约 200 个,或者最好更小一些。我不完全确定您为什么要存储 600 个这种性质的数据点。我觉得如果您在服务器端进行过滤/缩小,您可以节省大量时间/内存。

我见过有人存储 300-400 个数据点,尽管这取决于您在核心数据库中定义的对象有多大,所以最好只运行一些测试。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-04-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-08
    • 2013-02-06
    相关资源
    最近更新 更多