Android保存列表<string> </string>

时间:2012-06-25 17:10:56

标签: android list save

无论如何我可以将List变量保存到Androids手机的内部或外部存储器中吗?我知道我可以保存原始数据,但不确定这个。

提前致谢。

2 个答案:

答案 0 :(得分:23)

是的,你只能保存原语,所以你可以这样:

List<String> list = new ArrayList<String>();
list.add("one");
list.add("two");

StringBuilder csvList = new StringBuilder();
for(String s : list){
      csvList.append(s);
      csvList.append(",");
}

sharedPreferencesEditor.put("myList", csvList.toString());

然后再次创建list

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);     
}

你可以将这个“序列化”封装到你自己的类中,包含一个列表以保持它的整洁。您也可以考虑将list转换为JSON

答案 1 :(得分:-1)

如果您想在程序中存储/检索/删除某些字符串值,则List优于Array。下面我将向您展示如何使用它。

 // Declaring List Variable
 List<String> Mylist = new ArrayList<String>();

 // Adding item to List
 Mylist.add(list.size(), "MyStringValue");   //this will add string at the next index

 // Removing element form list
 Mylist.remove(list.size()-1);   //this will remove the top most element from List