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