【问题标题】:What I should pick - JSON or SQLite? [closed]我应该选择什么 - JSON 或 SQLite? [关闭]
【发布时间】:2013-08-03 02:20:09
【问题描述】:

在我的应用程序中,在每次启动时,首先必须从服务器下载一些 JSON,然后我需要通过在整个应用程序生命周期中解析这些数据来显示各种信息。 JSON 对象非常大,几乎有 5000 个 JSONArray。每个 JSON 数组的格式如下:

[37,101,"The Blocks Problem",9952,0,1000000000,0,852,0,0,11197,0,16606,0,7279,200,18415,5325,14492,3000,1]

所以我有两个选择:

  1. 将 json 字符串保存到文件中,稍后再读取。
  2. 将 JSON 数组保存在 SQlite 数据库中,其中包含近 10 列和 5000 行。

第一个选项似乎是有效的。但后来我必须操纵 JSON 来显示各种信息。在某些情况下,我需要搜索整个数组以获取数组信息,这样的情况很多。所以这也将非常耗时。

第二个选项更适合更快地搜索和显示。所以我选择了第二种选择。但是一次插入 5000 行也很耗时。我在 AsyncTask 中进行了改进,但执行起来需要太多时间 - 解析 JSON 并存储在 SQlite 表中。

那我该怎么办?存储这些大量信息并在以后有效使用它的最佳方式是什么?

【问题讨论】:

    标签: android json android-sqlite


    【解决方案1】:

    我今天回答了一个非常接近这个问题的问题 - File or Database? - Best Practice to save Objects on Android-Device。我想补充一点,如果插入 5000 行花费的时间太长,请尝试将它们全部添加到单个事务中,或者使用批量加载机制。找出插入问题而不是尝试使用文件是值得的。

    查看this tutorial关于批量加载SQLite

    【讨论】:

      猜你喜欢
      • 2015-09-15
      • 2010-12-25
      • 2017-10-01
      • 2012-02-12
      • 2011-01-27
      • 2013-04-26
      • 1970-01-01
      • 2015-02-23
      相关资源
      最近更新 更多