无论如何我可以将 List 变量保存到 Android 手机的内部或外部存储器中吗?我知道我可以保存原始数据,但不确定这个。
提前致谢。
最佳答案
是的,你只能保存原语,所以你可以这样:
List<String> list = new ArrayList<String>();
list.add("one");
list.add("two");
list.add("three");
StringBuilder csvList = new StringBuilder();
for(String s : list){
csvList.append(s);
csvList.append(",");
}
sharedPreferencesEditor.put("myList", csvList.toString());
然后要再次创建您的列表
,您需要:
String csvList = sharedPreferences.getString("myList");
String[] items = csvList.split(",");
List<String> list = new ArrayList<String>();
for(int i=0; i < items.length; i++){
list.add(items[i]);
}
您可以将此“序列化”封装到您自己的类中,包装一个列表以保持它整洁。您也可以考虑将 list
转换为 JSON
。
关于Android 保存列表<String>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11193983/