在android开发中,经常需要保存一些数据,如:用户信息、配置数据等;
这些信息所的空间极小,不必牵扯到数据库的操作。
SharedPreferences一种轻量级的数据存储方式,采用Key-Value键值对的方式进行保存。其存储的位置在/data/data目录下
SharedPreferences对象本身只能获取数据而不支持存储和修改,存储修改是通过Editor对象实现。
使用SharedPreferences保存数据分为以下几个步骤:
1、获取SharedPreferences对象(需要参数Context);
2、根据得到的SharedPreferences对象获取Editor对象;
3、通过Editor对象进行操作(保存,更改,删除);
4、通过commit()方法提交
上代码:
package com.example.sharedpreferencestest;
import android.os.Bundle;
import android.os.SystemClock;
import android.app.Activity;
import android.content.Context;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.view.Menu;
import android.widget.Toast;
/**
* sharedpreferences的使用
* @author Gavin
*
*/
public class MainActivity extends Activity {
/**
* 用户名
*/
private String userName = "437955114@qq.com";
/**
* 密码
*/
private String userPwd = "123456";
/**
* 定义一个SharedPreferences用来保存用户信息
*/
SharedPreferences preferences;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//得到一个sharedpreferences对象
//参数1:保存的文件名 参数2:该文件的打开方式
preferences = getSharedPreferences("userinfo",Context.MODE_PRIVATE);
setUserInfo();
getUserInfo();
removeUserInfo();
getUserInfo();
}
/**
* 存储或修改操作
*/
private void setUserInfo(){
Editor edit = preferences.edit();//获取Editor对象来编辑SharedPreferences
edit.putString("userName", userName);//保存用户名
edit.putString("userPwd", userPwd);//保存用户密码
edit.commit();//提交编辑
}
/**
* 获取SharedPreferences中的内容
*/
private void getUserInfo(){
//参数1:所保存的Key 参数2:默认值
String username = preferences.getString("userName", "");//获取保存的用户名
String userpwd = preferences.getString("userPwd", "");//获取保存的密码
Toast.makeText(getApplicationContext(), username+"-"+userpwd, Toast.LENGTH_LONG).show();
}
/**
* 清除SharedPreferences数据
*/
private void removeUserInfo(){
Editor edit = preferences.edit();//获取Editor对象来编辑SharedPreferences
edit.remove("userName");
edit.remove("userPwd"); 7
edit.commit();//提交编辑
}
}
运行后的结果:
这样就完成了一次本地数据的存储!!
源码:http://download.csdn.net/detail/z437955114/9410157
参考博文:
1、http://www.codeceo.com/article/android-sharedpreferences-usage.html
2、http://blog.sina.com.cn/s/blog_49cb313d01014tk6.html
转载请说明出处
若有错误之处,感谢指出