首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何用SharedPreferences保存Object[]?

如何用SharedPreferences保存Object[]?
EN

Stack Overflow用户
提问于 2018-05-06 00:01:44
回答 2查看 30关注 0票数 0

我尝试了许多解决方案,但都不起作用。我不知道这些是不是错了,还是我做错了什么。我有MyClass[] array = new MyClass[] { objects declarations... };,我想用SharedPreferences保存它。有人能给我做这件事所需的完整的SaveIt() {}LoadIt() {}代码吗?

EN

回答 2

Stack Overflow用户

发布于 2018-05-06 00:03:37

不可能。

您只能在SharedPrefences SharePreferences.Editor中存储简单的值

更新:

如果您想使用sideways库,请使用Gson库:

代码语言:javascript
运行
复制
dependencies {
compile 'com.google.code.gson:gson:2.8.2'
}

商店:

代码语言:javascript
运行
复制
Gson gson = new Gson();
//Your json response object value store in json object
JSONObject jsonObject = response.getJSONObject();
//Convert json object to string
String json = gson.toJson(jsonObject);
//Store in the sharedpreference
getPrefs().setUserJson(json);

检索:

代码语言:javascript
运行
复制
String json = getPrefs().getUserJson();
票数 0
EN

Stack Overflow用户

发布于 2018-05-06 00:09:10

SharedPreference不是用来存储复杂对象、数组或列表的。

因此,在您的情况下,我建议使用Realm或SQLite作为本地数据库。您可以添加、移除或查询项目列表,这更加灵活

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50191399

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档