关于SharedPreferences写入和删除数组数据

Posted wuzaishijie

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于SharedPreferences写入和删除数组数据相关的知识,希望对你有一定的参考价值。

由于数值比较多,单个存储和删除已经无法满足需要,所以写了个简单的数组格式的写入和删除操作。

/**
         * 用来存储相应的字符串类型
         * @param context 上下文对象
         * @param key 存储的键数组
         * @param values 存储的值数组
         */
        public static void putStringArray(Context context,String[] key,String[] values) {
            for (int i = 0; i < key.length; i++) {
                if (sharedPreferences==null) {
                    sharedPreferences=context.getSharedPreferences("config", Context.MODE_PRIVATE);
                }
                sharedPreferences.edit().putString(key[i], values[i]).commit();
            }
        }
        /**
         * 用来存储相应的bool类型
         * @param context 上下文对象
         * @param key 存储的键数组
         * @param values 存储的值数组
         */
        public static void putBoolArray(Context context,String[] key,Boolean[] values) {
            for (int i = 0; i < key.length; i++) {
                if (sharedPreferences==null) {
                    sharedPreferences=context.getSharedPreferences("config", Context.MODE_PRIVATE);
                }
                sharedPreferences.edit().putBoolean(key[i], values[i]).commit();
            }
        }    
        
        /**
         * 从sp中移除指定节点(按照数组移除)
         * @param context 上下文环境
         * @param key 需要移除节点的名称
         */
        public static void removeArray(Context context, String[] key) {
            for (int i = 0; i < key.length; i++) {
                if (sharedPreferences==null) {
                    sharedPreferences = context.getSharedPreferences("config", Context.MODE_PRIVATE);
                }
                sharedPreferences.edit().remove(key[i]).commit();
            }
            
        }

 

 

  

以上是关于关于SharedPreferences写入和删除数组数据的主要内容,如果未能解决你的问题,请参考以下文章

SharedPreferences 写入读取

Android MMKV 原理简述

Sharedpreferences 删除不起作用

SharedPreferences会在使用前不断删除

数据存储和访问

安卓SharedPreferences的使用