zoukankan      html  css  js  c++  java
  • Android应用开发之使用SharedPreferences存储数据

    SharedPreferencesAndroid中最容易理解的数据存储技术,实际上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 Explorerdata/data下导出该文件,并查看。

    那么已经保存好的数据如何读取出来呢。我们来看:

    //同样,在读取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  程序执行结果

     

     
  • 相关阅读:
    【贪心】闭区间问题
    【贪心】电视节目安排
    中石油-高精度阶乘-java
    hdu 6444 Neko's loop 单调队列优化DP
    hdu 3415 Max Sum of Max-K-sub-sequence 单调队列优化DP
    51nod 1050 循环数组最大子段和 单调队列优化DP
    hdu 6406 Taotao Picks Apples 线段树 单点更新
    Wannafly 挑战赛22 D 整数序列 线段树 区间更新,区间查询
    dp专题训练
    zoj 3747 递推dp
  • 原文地址:https://www.cnblogs.com/ikarl/p/2767330.html
Copyright © 2011-2022 走看看