我已经使用过SharedPreferences
了。但我想找到更好的方法来保存和检索Android中的Arraylist。
我试图在SQLite中保存详细信息,但sqlite仅用于结构化细节。我很困惑哪个本地存储将是Arraylist的正确方式。
请说明我们必须在哪种情况下使用的正确理由。
答案 0 :(得分:3)
是如果你有多个文件的长数据,那么你必须存储在SQLite数据库中。在SQLite数据库中,无需在数据库中创建多个字段,只需将ArrayList转换为字符串并将其存储到数据库中。当您从数据库中检索数据作为字符串时,将字符串转换为ArralyList。这是在本地存储数据的简单,安全和最快捷的方式。
类的String String到类的ArrayList和类的字符串你应该使用GSON。
快乐的编码......
答案 1 :(得分:1)
您可以同时使用SharedPreferences
和SQLite
。要保存您的arraylist转换为json
,就像这样
Gson gson = new Gson();
String yourJsonString = gson.toJson(arrayList);
并检索
Gson gson = new Gson();
Type type = new TypeToken<ArrayList<YourObject>>() {}.getType();
ArrayList<YourObject> arrayList = gson.fromJson(yourJsonString, type);