哪种方式可以存储数据?

时间:2017-10-09 14:11:02

标签: android

我正在开发存储诗歌数据的Android应用程序,我可以从string.xml文件访问数据,我也可以构建SQLite数据库。那么最简单的方法是什么?

3 个答案:

答案 0 :(得分:1)

有一些方法可以在Android中存储数据,有些答案提到了SharedPreferences,TextFiles或SqLite。

我认为SharedPreferences不是你的最佳选择,因为你会存储诗歌,我想你需要每首诗的一些属性。

SqLite和Realm非常相似,可能存储了许多数据类型,Realm是一个允许以非常简单的方式创建和访问数据库的库。 然而,我知道更简单的方法是使用Realm,它真的很容易使用。我希望我的回答对你有帮助。

注意:抱歉我的英语不好:(。

答案 1 :(得分:1)

您选择的选项在很大程度上取决于您要存储的数据类型。

您的strings.xml文件(和其他资源文件)应该用于静态内容。您想要向用户显示的简单文本非常适合。

如果您有大量结构化数据,SQLite数据库非常有用。如果您有对象列表(如琐事问题和答案列表),那么这可能更适合数据库。

SQLite数据库也可以在运行时由您的应用程序修改(资源文件,例如strings.xml不是),因此如果您要存储用户输入的数据,可以使用数据库或SharedPreferences(键值)对)可能更合适。

答案 2 :(得分:1)

如果您需要少量和特定的参数来读写,我会建议您SharedPreferences

<强> SharedPreferences

  

SharedPreferences是一个键/值存储,您可以在其中保存数据   某些关键。要从商店读取数据,您必须知道密钥   的数据。这使得读取数据非常容易。但就像它一样简单   是存储少量数据,因为它很难存储和存储   读取大型结构化数据,因为您需要为每个单元定义键   数据,此外你不能真正搜索除你之外的数据   有一个命名键的概念。

其他选择是:
Realm / ObjectBox数据库
Sqlite相同的原因。但与架构中的Sqlite和使用这些库的方式有许多不同。

<强> SQLite的

  

大量相同的结构化数据应存储在SQLite中   数据库作为数据库是为这种数据而设计的。作为数据   由数据库构建和管理,可以查询它   使用查询匹配特定条件的数据子集   像SQL这样的语言。这使得可以搜索数据。的   当然,管理和搜索大量数据会影响到   性能因此从数据库读取数据可能比读取速度慢   来自SharedPreferences的数据。