SharedPreferences存储学习笔记

1.说明:

>SP存储专门用来存储一些单一的小数据

>存储数据的类型:boolean, float, int, long, String

>数据保存的路径: /data/data/packageName/shared_prefs/yyy.xml

>可以数值数据只能是当前应用读取,而别的应用不可以

>应用卸载时会删除此数据

2.相关API

1).SharedPreferences: 对应sp文件的接口

--- context.getSharedPreferences (String name, int mode) : 得到SP对象

> name: 文件名(不带.xml)

> mode: 生成的文件模式(是否是私有的,即其它应用是否可以访问)

--- Editor sp.edit() : 得到Editor 对象

--- Xxx sp.getXxx(name, defaultValue) : 根据name得到对应的数据

2).Editor : 能更新 sp 文件的接口

--- Editor put(name, value) : 保存一个键值对,没有真正保存到文件中

--- Editor remove(name)

--- commit() : 提交,数据真正保存到文件中

3.相关代码

public class SpActivity extends Activity {

	private EditText et_sp_key;
	private EditText et_sp_value;

	private SharedPreferences sp;
	private Editor edit;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_sp);

		et_sp_key = (EditText) findViewById(R.id.et_sp_key);
		et_sp_value = (EditText) findViewById(R.id.et_sp_value);

		// 1.得到sp对象
		sp = getSharedPreferences("atguigu", Context.MODE_PRIVATE);
	}

	public void save(View v) {
		// 2.得到editor对象
		Editor edit = sp.edit();
		// 3.得到输入的key/value
		String name = et_sp_key.getText().toString();
		String value = et_sp_value.getText().toString();
		// 4.使用editor保存key-value
		edit.putString(name, value).commit();
		// 5.提示
		Toast.makeText(this, "保存完成", 0).show();
	}

	public void read(View v) {
		// 1.得到输入的key
		String key = et_sp_key.getText().toString();
		// 2.根据key读取丢应的value
		String value = sp.getString(key, null);
		// 3.显示
		if (value == null) {
			Toast.makeText(this, "没有找到对应的value", 0).show();
		} else {
			et_sp_value.setText(value);
		}
	}
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值