Android存储-SharedPreferences

来源:互联网 发布:access数据库管理软件 编辑:程序博客网 时间:2024/04/29 07:21

一.Android的存储方式:
1.SharedPreferences 共享参数,用于存储轻量级数据的
2.File 文件存储,手机存储,内存卡存储
3.SQLite 数据库存储
4.ContentProvider 内容提供者
5.网络存储
在此只介绍 SharedPreferences 存储方式:
二.SharedPreferences
(一)特点:
1.用于存储轻量级的数据。
2.存储的数据类型比较简单:基本数据类型或者string型
3.通常以xml文件方式存储在data文件夹中,以key-value的形式进行存储。
(具体路径为:/data/data/<包名>/shared_pref/)

(二)存储数据的步骤:
1.创建SharedPreferenced的对象
2.创建Editor的对象
3.使用Editor对象的putXxx方法,对数据进行存储
4.使用Editor的commit()方法,把存储的数据或者修改的后的数据进行提交。

(三)读取数据的步骤:
1.创建SharedPreferenced的对象
2.使用SharedPreferenced的对象的getXxx()方法,取出key所对应的value值
(四)注意:
SharePreferenced本身的对象不能对数据进行存储和修改,只能获取到数据。若要存储和修改数据,则通过Editor的实例化对象。

(四)mode常用的四种形式
MODE_PRIVATE : 要求生成的xml文件只能被本程序读、写。
MODE_APPEND :生成文件修改提交后,在原基础的后面添加内容
MODE_WORLD_READABLE: 要求可以被其他程序读
MODE_WORLD_WRITEABLE:要求可以被其他程序读,写。

具体代码如下(对应的布局文件只有两个Button 按钮):
public class RandomActivity extends Activity implements OnClickListener{
private Button bn1,bn2;
SharedPreferences pref;
Editor editor;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_random);
bn1 = (Button)findViewById(R.id.btn1);
bn2 = (Button)findViewById(R.id.btn2);
//实例化一个SharedPreference对象
pref = getSharedPreferences(“random_pref”, MODE_PRIVATE);
//实例化一个editor对象
editor = pref.edit();

    bn1.setOnClickListener(this);    bn2.setOnClickListener(this);}@SuppressLint("SimpleDateFormat")@Overridepublic void onClick(View v) {    switch (v.getId()) {    case R.id.btn1://存数据        //使用用editor存入数据        editor.putString("str", "这是存入的数据");        //提交        editor.commit();        break;    case R.id.btn2: //取数据        //使用pref 取数据        String string = pref.getString("str", null);        if (string==null) {            Toast.makeText(RandomActivity.this, "还未写入数据", Toast.LENGTH_SHORT).show();        }else{            Toast.makeText(RandomActivity.this,                     "您存入的内容为为"+string, Toast.LENGTH_LONG).show();        }        break;    default:        break;    }}

}

0 0
原创粉丝点击