«

Android应用开发SharedPreferences存储数据的使用方法

时间:2024-3-2 18:04     作者:韩俊     分类: Android


1.概述。SharePreferences是用来存储一些简单配置信息的一种机制,使用Map数据结构来存储数据,以键值对的方式存储,采用了XML格式将数据存储到设备中。例如保存登录用户的用户名和密码。只能在同一个包内使用,不能在不同的包之间使用,其实也就是说只能在创建它的应用中使用,其他应用无法使用。

创建的存储文件保存在/data/data/<package name>/shares_prefs文件夹下。

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();



}

}


标签: android

热门推荐