SharedPreferences 数据存储功能

         这个是一个轻量级的存储类。实际上SharedPreferences处理的就是一个key-value(键值对)SharedPreferences常用来存储一些轻量级的数据。我们今天来讲讲它如何进行操作的。我们知道这个存储类只能在同一个包类使用(类似于一个应用的全局变量)。其存储位置在/data/data/<包名>/shared_prefs目录下。SharedPreferences对象本身只能获取数据而不支持存储和修改,存储修改是通过Editor对象实现。步骤如下:

      1. 根据Context获取SharedPreferences对象(一般在可以在onCreate方法中直接调用getSharedPreferences()、或者采用Context ctx = 类名称.this; 

      2.利用edit()方法获取Editor对象(一般情况下,SharedPreferences对象获取数据,但是如存储数据则需要获取到它的Editor对象)。

      3.通过Editor对象存储key-value键值对数据。采用PutXXX(key,value)的方式进行存储。

      4.通过commit()方法提交数据。若没有执行此项步骤,则数据将不对保存到xml文件中。

例子:

publicclass MainActivity extends Activity {
    @Override
publicvoid onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
       setContentView(R.layout.main);
       
   //获取SharedPreferences对象
       Context ctx = MainActivity.this;       
       SharedPreferences sp = ctx.getSharedPreferences("test", MODE_PRIVATE);
//存入数据
       Editor editor = sp.edit();
       editor.putString("name", "zhangsan");
       editor.putInt("id", 1);
       editor.commit();
       
    }
}


     数据保存后如何获取呢?步骤和上面差不多,但是少了获取Editor对象。

例子如下:

 //获取SharedPreferences对象
       Context ctx = MainActivity.this;       
       SharedPreferences sp = ctx.getSharedPreferences("test", MODE_PRIVATE);

//返回STRING_KEY的值
//如果NOT_EXIST不存在,则返回值为"none"
       Log.d("test", sp.getString("name", "none"));
       Log.d("test", sp.getInt("id", 0));

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值