In Shared Preferences How To Store String Array In Android Application
In my application am using list view in base adapter. when i click the item its id store in shared preferences string array format. how to save multiple item id in string array for
Solution 1:
You can try using JSONArray
as JSON is light-weight
also, you can create a JSONArray
and write it to SharedPreference as String.
To write,
SharedPreferences prefs = PreferenceManager
.getDefaultSharedPreferences(this);
JSONArray jsonArray = new JSONArray();
jsonArray.put(1);
jsonArray.put(2);
Editor editor = prefs.edit();
editor.putString("key", jsonArray.toString());
System.out.println(jsonArray.toString());
editor.commit();
To Read,
try {
JSONArray jsonArray2 = new JSONArray(prefs.getString("key", "[]"));
for (int i = 0; i < jsonArray2.length(); i++) {
Log.d("your JSON Array", jsonArray2.getInt(i)+"");
}
} catch (Exception e) {
e.printStackTrace();
}
Solution 2:
If you are using API 11 then its possible by using putStringSet
. Otherwise you may either convert your string array into a single string as mentioned by @hotverispicy or use SQLite database
Solution 3:
you can save it as string by ,
(comma) seperator and while fetching just use split()
string toPut="";
toPut += "listItem,";
set toPut in your SharePreference
and commit()
To get the same in array: get prefString from SharePreference
String[] fetchArray= prefString.split(",");
Post a Comment for "In Shared Preferences How To Store String Array In Android Application"