Android五大存储---SharedPreferences

来源:互联网 发布:2012年雷霆vs马刺数据 编辑:程序博客网 时间:2024/05/27 20:19
 SharedPreferences接口,SharedPreferences存储的是简单类型的key—value对,SharedPreferences主要负责读取应用程序的Preferences数据,提供了如下方法来访问SharedPreferences中的键值对:
  • boolean contains(String key):判断SharedPreferences是否包含特定的Key的数据

  • abstract Map < String.?> getAll():获取SharedPreferences数据里的全部键值对

  • boolean getXxx(String key,xxx defValue):获取SharedPreferences数据里的指定的key的value,如果该key不存在呢返回默认的defValue,数据类型可以是String、long、int、float等基本数据类型

    SharedPreferences接口本身没有提供写入数据的能力,是通过他的内部接口,SharedPreferences调用edit()方法得到Editor对象,对象能使用如下方法写数据:
  • SharedPreferences.Editor clear():清空SharedPreferences的数据
  • SharedPreferences.Editor putXxx(String key,xxx value):向SharedPreferences存入指定key的对应数据
  • boolean commit():编辑完成后提交数据

     SharedPreferences本身是个接口,无法创建实例,只能通过context提供的getSharedPreferences(String name,int mode)得到实例。mode有4个参数:
  • MODE_PRIVATE 指定该SharedPreferences只能被本应用读写
  • MODE_WORLD_READABLE 指定能被其他应用读,但不能写
  • MODE_WORLD_WRITEABLE 指定能被其他应用写,不能读
    Demo(在一个button的点击事件里):
public void onClick(View v) {switch (v.getId()){case R.id.btn_read:mSharedPreferences=getSharedPreferences("edit_write", MODE_PRIVATE);//名称,mode           String text= mSharedPreferences.getString("edit","haha");mTextview.setText(text);break;case R.id.btn_write:mSharedPreferences=getSharedPreferences("edit_write", MODE_PRIVATE);            SharedPreferences.Editor editor=mSharedPreferences.edit();            editor.putString("edit", mEditext.getText().toString());            editor.commit();break;

生成文件:
shared_prefs中的xml文件

0 0