Android之SharedPreferences存储

来源:互联网 发布:刻录机软件 编辑:程序博客网 时间:2024/06/16 03:21

                                                                  Android之SharedPreferences存储

简介

     在实际的软件运行中,往往需要许多配置参数信息,如Windows操作系统的引导文件boot.ini就保存了操作系统的配置参数,在编写 Java SE 或 Java EE 时,也往往会使用资源文件(*.properties)保存了一些系统的配置信息,而在Android中,如果要想实现配置信息的保存则需要使用SharedPreferences完成。

      SharedPreferences提供了一些基础的信息保存功能,所有的信息都是按照“key=value”的形式进行保存的,但是android.content.SharedPreferences接口所保存的信息只能是一些基本的数据类型,如String、Int、boolean等

  

 使用步骤

     1、得到SharedPreferences对象。   //有的话得到,没有的话创建                                                                                              

       2、调用SharedPreferences对象的edit()方法来获取一个SharedPreferences.Editor对象。//使其处于可编辑状态。   

       3、向SharedPreferences.Editor对象中添加数据。

       4、调用commit()方法提交更新的数据


   详细过程

1、得到SharedPreferences对象

方法1:
Context.getSharedPreferences(文件名称,操作模式)
文件名称不存在就会创建一个,

操作模式有两种
MODE_PRIVATE:默认操作模式,直接在把第二个参数写0就是默认使用这种操作模式,这种模式表示只有当前的应用程序才可以对当前这个SharedPreferences文件进行读写。
MODE_MULTI_PRIVATE:用于多个进程共同操作一个SharedPreferences文件。

注:MODE_WORLD_READABLE和MODE_WORLD_WRITEABLE这两种模式已经在Android 4.2版本以后废弃了。

方法2:
Activity.getSharedPreferences(操作模式)

使用这个方法会自动将当前活动的类名作为SharedPreferences的文件名
方法3
PreferenceManager.getDefaultSharedPreferences(Context)

使用这个方法会自动使用当前程序的包名作为前缀来命名SharedPreferences文件

2、调用SharedPreferences对象的edit()方法来获取一个SharedPreferences.Editor对象。

SharedPreferences.Editor editor = getSharedPreferences(“data”,MODE_PRIVATE).edit();


3、向SharedPreferences.Editor对象中添加数据。

editor.putString(“name”,”Lily”);   //以键值对形式存储
editor.putInt(“age”,”20”);    //以键值对形式存储
editor.putBoolean(“married”,false);   //以键值对形式存储


4、调用commit方法将添加的数据提交。

editor.commit();


代码示例


    SharedPreferences pref = MainActivity.this.getSharedPreferences(“data”,MODE_PRIVATE);
    SharedPreferences.Editor editor = pref.edit();
    editor.putString(“name”,”lily”);
    editor.putString(“age”,”20”);
    editor.putBoolean(“married”,false);
    editor.commit();

    如果要读取数据:
   SharedPreferences pref = getSharedPreferences(“data”,MODE_PRIVATE);
   String name = pref.getString(“name”,”“);//第二个参数为默认值
   int age = pref.getInt(“age”,0);//第二个参数为默认值
   boolean married = pref.getBoolean(“married”,false);//第二个参数为默认值


    以上便是 SharedPreferences的基本用法

    感谢秦时明月前辈的只是分享


原创粉丝点击