首页 > 代码库 > 【android】存储数组数据到SharedPreferences
【android】存储数组数据到SharedPreferences
如果要数组数据(如boolean[] 、int[]等)到SharedPreferences时,我们可以先将数组数据组织成json数据存储到SharedPreferences,读取时则对json数据进行解析就ok了。
例如,我要保存boolean[] 数组数据:
public static void saveApkEnalbleArray(Context context,boolean[] booleanArray) { SharedPreferences prefs = context.getSharedPreferences(APK_ENABLE_ARRAY, Context.MODE_PRIVATE); JSONArray jsonArray = new JSONArray(); for (boolean b : booleanArray) { jsonArray.put(b); } SharedPreferences.Editor editor = prefs.edit(); editor.putString(APK_ENABLE_ARRAY,jsonArray.toString()); editor.commit(); }
读取数据:
public static boolean[] getApkEnableArray(Context context,int arrayLength) { SharedPreferences prefs = context.getSharedPreferences(APK_ENABLE_ARRAY, Context.MODE_PRIVATE); boolean[] resArray=new boolean[arrayLength]; Arrays.fill(resArray, true); try { JSONArray jsonArray = new JSONArray(prefs.getString(APK_ENABLE_ARRAY, "[]")); for (int i = 0; i < jsonArray.length(); i++) { resArray[i] = jsonArray.getBoolean(i); } } catch (Exception e) { e.printStackTrace(); } return resArray; }
当保存一些复杂的对象数组时,可以用gson来处理json和object的相互转换。
【android】存储数组数据到SharedPreferences
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。