【问题标题】:Converting ArrayList to String to store in Shared Preferences将 ArrayList 转换为 String 以存储在 Shared Preferences 中
【发布时间】:2015-01-31 09:54:08
【问题描述】:

我有多个值的 ArrayList。我想将此 ArrayList 转换为 String 以保存在 sharedPreferences 中,然后我想检索 String 并将其转换回 ArrayList

请告诉我该怎么做? (或任何其他存储和检索 ArrayList 的想法)

【问题讨论】:

  • 你至少应该包含一些你被卡住的代码sn-p。

标签: java android string arraylist sharedpreferences


【解决方案1】:

将数组列表转换为字符串:

String str = "";

for (String s : arraylist)
{
    str += s + ",";
}

将字符串保存到共享首选项中:

PreferenceManager.getDefaultSharedPreferences(context).edit().putString("mystr", str).commit();

从 sharedpreference 中获取字符串:

String str =    PreferenceManager.getDefaultSharedPreferences(context).getString("mystr", "defaultStringIfNothingFound");

将字符串转换为数组列表:

List<String> arraylist = new ArrayList<String>(Arrays.asList(str.split(",")));

【讨论】:

  • 注意:- 这仅适用于 String 类型的 Arraylist,ArrayList 可以是任何类型。问题指向 ArrayList
【解决方案2】:

您可以使用 Google 的 GSON。

Gson 是一个 Java 库,可用于将 Java 对象转换为 他们的 JSON 表示。它还可以用于转换 JSON 字符串转换为等效的 Java 对象。 Gson 可以与任意 Java 一起工作 对象,包括您没有的预先存在的对象 的源代码。

http://google-gson.googlecode.com/svn/trunk/gson/docs/javadocs/com/google/gson/Gson.html

https://code.google.com/p/google-gson/

你明白了:

  • 存储:将对象转换为 JSON 字符串 -> 保存字符串
  • 检索:获取字符串 -> 从 JSON 转换为对象

【讨论】:

  • 但 gson 已被弃用
  • 点击here ..当你点击下载然后消息来了
猜你喜欢
  • 2020-10-07
  • 2011-10-22
  • 2023-03-17
  • 1970-01-01
  • 2011-08-20
  • 1970-01-01
  • 2021-07-25
相关资源
最近更新 更多