您的位置:首页 > 移动开发 > Android开发

Android数据保存之SharedPreferences

2014-04-15 11:14 447 查看
SharedPreferences用于保存一些需要的数据,其背后是用xml文件存放数据,文件存放在/data/data/<package name>/shared_prefs目录下。所以即便是程序退出,下次启动时也可以将数据读取出来,比如一些配置信息的保存和读取。

一般情况下我们会封装一些方法进行操作:

SharedPreferences prefer;

    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //第一个参数是保存xml的文件名
        //第二个参数指定文件的操作模式,共有四种操作模式
        prefer = getSharedPreferences("FileName", MODE_PRIVATE);
    }

    //下面方法中得String name参数为关键词,都是基于关键字进行存储,读取,删除

    //存储String类型
    public void savePrefer(String name, String val) {
        SharedPreferences.Editor editor = prefer.edit();
        editor.putString(name, val);
        //这句绝对不能忘,没有提交的存储相当于没存储
        editor.commit();
    }

    //存储boolean类型
    protected void savePrefer(String name, boolean val) {
        SharedPreferences.Editor editor = prefer.edit();
        editor.putBoolean(name, val);
        editor.commit();
    }

    //存储int类型
    protected void savePrefer(String name, int val) {
        SharedPreferences.Editor editor = prefer.edit();
        editor.putInt(name, val);
        editor.commit();
    }

    //读取String类型数据
    protected String getPrefer(String name, String def) {
        return prefer.getString(name, def);
    }

    //读取int类型数据
    public int getPrefer(String name, int def) {
        return prefer.getInt(name, def);
    }

    //读取boolean类型数据
    public boolean getPrefer(String name, boolean def) {
        return prefer.getBoolean(name, def);
    }

    //还可以存取读取float等其他类型..............

    //最近需求需要发现原来还可以移除保存的数据

    //删除保存的数据
    protected void removePrefer(String name) {
        SharedPreferences.Editor editor = prefer.edit();
        editor.remove(name);
        editor.commit();
    }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: