Android应用开发SharedPreferences存储数据的使用方法
程序员文章站
2023-12-09 15:21:33
sharedpreferences是android中最容易理解的数据存储技术,实际上sharedpreferences处理的就是一个key-value(键值对)。share...
sharedpreferences是android中最容易理解的数据存储技术,实际上sharedpreferences处理的就是一个key-value(键值对)。sharedpreferences常用来存储一些轻量级的数据.
//实例化sharedpreferences对象(第一步)
sharedpreferences mysharedpreferences= getsharedpreferences("test",
activity.mode_private);
//实例化sharedpreferences.editor对象(第二步)
sharedpreferences.editor editor = mysharedpreferences.edit();
//用putstring的方法保存数据
editor.putstring("name", "karl");
editor.putstring("habit", "sleep");
//提交当前数据
editor.commit();
//使用toast信息提示框提示成功写入数据
toast.maketext(this, "数据成功写入sharedpreferences!" ,
toast.length_long).show();
执行以上代码,sharedpreferences将会把这些数据保存在test.xml文件中,可以在file explorer的data/data下导出该文件,并查看。
那么已经保存好的数据如何读取出来呢。我们来看:
[code]
//同样,在读取sharedpreferences数据前要实例化出一个sharedpreferences对象
sharedpreferencessharedpreferences= getsharedpreferences("test",
activity.mode_private);
// 使用getstring方法获得value,注意第2个参数是value的默认值
string name =sharedpreferences.getstring("name", "");
string habit =sharedpreferences.getstring("habit", "");
//使用toast信息提示框显示信息
toast.maketext(this, "读取数据如下:"+"\n"+"name:" + name + "\n" + "habit:" + habit,
toast.length_long).show();
源代码如下:
public class main extends activity
{
@override
public void oncreate(bundle savedinstancestate)
{
super.oncreate(savedinstancestate);
setcontentview(r.layout.main);
}
public void onclick_writedata(view view)
{
sharedpreferences mysharedpreferences = getsharedpreferences("test",
activity.mode_private);
sharedpreferences.editor editor = mysharedpreferences.edit();
editor.putstring("name", "karl");
editor.putstring("habit", "sleep");
editor.commit();
toast.maketext(this, "数据成功写入sharedpreferences!" ,
toast.length_long).show();
}
public void onclick_readdata(view view)
{
sharedpreferences sharedpreferences = getsharedpreferences("test",
activity.mode_private);
string name = sharedpreferences.getstring("name", "");
string habit = sharedpreferences.getstring("habit", "");
toast.maketext(this, "读取数据如下:"+"\n"+"name:" + name + "\n" + "habit:" + habit,
toast.length_long).show();
}
}
图1.1 程序执行结果
复制代码 代码如下:
//实例化sharedpreferences对象(第一步)
sharedpreferences mysharedpreferences= getsharedpreferences("test",
activity.mode_private);
//实例化sharedpreferences.editor对象(第二步)
sharedpreferences.editor editor = mysharedpreferences.edit();
//用putstring的方法保存数据
editor.putstring("name", "karl");
editor.putstring("habit", "sleep");
//提交当前数据
editor.commit();
//使用toast信息提示框提示成功写入数据
toast.maketext(this, "数据成功写入sharedpreferences!" ,
toast.length_long).show();
执行以上代码,sharedpreferences将会把这些数据保存在test.xml文件中,可以在file explorer的data/data下导出该文件,并查看。
那么已经保存好的数据如何读取出来呢。我们来看:
复制代码 代码如下:
[code]
//同样,在读取sharedpreferences数据前要实例化出一个sharedpreferences对象
sharedpreferencessharedpreferences= getsharedpreferences("test",
activity.mode_private);
// 使用getstring方法获得value,注意第2个参数是value的默认值
string name =sharedpreferences.getstring("name", "");
string habit =sharedpreferences.getstring("habit", "");
//使用toast信息提示框显示信息
toast.maketext(this, "读取数据如下:"+"\n"+"name:" + name + "\n" + "habit:" + habit,
toast.length_long).show();
源代码如下:
复制代码 代码如下:
public class main extends activity
{
@override
public void oncreate(bundle savedinstancestate)
{
super.oncreate(savedinstancestate);
setcontentview(r.layout.main);
}
public void onclick_writedata(view view)
{
sharedpreferences mysharedpreferences = getsharedpreferences("test",
activity.mode_private);
sharedpreferences.editor editor = mysharedpreferences.edit();
editor.putstring("name", "karl");
editor.putstring("habit", "sleep");
editor.commit();
toast.maketext(this, "数据成功写入sharedpreferences!" ,
toast.length_long).show();
}
public void onclick_readdata(view view)
{
sharedpreferences sharedpreferences = getsharedpreferences("test",
activity.mode_private);
string name = sharedpreferences.getstring("name", "");
string habit = sharedpreferences.getstring("habit", "");
toast.maketext(this, "读取数据如下:"+"\n"+"name:" + name + "\n" + "habit:" + habit,
toast.length_long).show();
}
}
图1.1 程序执行结果