我正在开发一个处理大量文本的Android应用程序。我对数据存储和检索感到困惑,我应该使用哪一个来加快数据检索速度? Sqlite或文件存储(json文件,每个类别的单独文件)。首先我考虑了sqlite,因为它更容易管理数据,但是在每个表中创建几乎1000行的表需要一些时间,或者我必须使用我的应用程序发送数据库,这将增加下载大小然后我想关于文件存储。我应该使用哪一个,sqlite或json文件作为数据创建是一次性过程,其余的是检索?任何人都可以建议一个更好的方式,我真的,真的很困惑。
答案 0 :(得分:1)
如果您有大量文字和数据,请使用greenDAO。它将处理您的SQLite相关的东西。它在开始时有点令人困惑,但是一旦你尝试了它,你将永远不会在没有它的情况下在Android上使用SQLite:
一些有趣的链接: http://developer.android.com/guide/topics/data/data-storage.html http://developer.android.com/training/basics/data-storage/index.html
答案 1 :(得分:1)
假设表创建仅在安装应用程序时发生一次,那么除非创建表非常非常慢,否则您只需在应用程序首次安装时执行该操作,并在屏幕上向用户添加一些适当的消息。
理想情况下,如果您的应用可以在不使用数据的情况下执行其他有用的操作,那么您可以让用户在后台创建表格时使用应用的其他部分。
我从过去的经验中发现,创建非常大的简单表实际上非常快,但您需要测试以查看您的示例需要多长时间。
另请注意,您可以通过SQLiteOpenHelper的onUpgrade方法选择仅修改升级时所需的数据库部分,因此在安装新版本时可能不必重新创建完整的数据库该应用程序。这还包括通过推迟更新直到首次使用数据库来避免延迟应用程序启动的机制,尽管在这种情况下可能不是您想要的。