Android 数据存储(一) 共享参数存储
一。原理:SharedPreferences是采用键值对对数据进行存储的,当存入数据时,给数据设置一个对应的键,取出数据时,就可以根据键获取到相应的数据。
二。步骤:
1.得到SharedPreferences对象;得到共享参数实例的方式有三种:
1.Context.getSharedPreferences();
2.Acitvity中:getPreferences();
3.PreferenceManager.getDefaultSharedpreferences();
2.通过sharedpreference.edit()得到Sharedpreference.Edit对象;
3.存储时:用Sharedpreference.Edit的put()存储数据,然后用commit()提交数据。
读取时,用Sharreoreferences的get()读取数据。
三。存储路径:data/data/包名/shared-prefs下,以XML文件的形式存储。
四。具体实例:
package com.example.testsharepreference;
import android.app.Activity;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.widget.Toast;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
/**
*保存数据
SharedPreferences share=null;
//得到SharePreferences对象,第一个参数:指定文件名,第二个参数:操作模式
share=getSharedPreferences("data", MODE_PRIVATE);
//得到SharedPreferen.Edit对象
SharedPreferences.Editor edit=share.edit();
//用edit存储数据
edit.putString("name", "张三");
edit.putInt("age", 20);
edit.putBoolean("男的?", true);
//提交数据,存储完成
edit.commit();
Toast.makeText(this, "数据存储完成", Toast.LENGTH_LONG).show();
}
/**
*读取数据
*/
public void getData(View view){
SharedPreferences share_get=null;
share_get=getSharedPreferences("data", MODE_PRIVATE);
//根据键获取数据,第二个参数为默认值,若没有指定的键,则返回默认值
boolean isMan=share_get.getBoolean("男的?", false);
int age=share_get.getInt("age", 0);
String name=share_get.getString("name", null);
Toast.makeText(this, name+String.valueOf(isMan)+String.valueOf(age),Toast.LENGTH_LONG).show();
}
二。步骤:
1.得到SharedPreferences对象;得到共享参数实例的方式有三种:
1.Context.getSharedPreferences();
2.Acitvity中:getPreferences();
3.PreferenceManager.getDefaultSharedpreferences();
2.通过sharedpreference.edit()得到Sharedpreference.Edit对象;
3.存储时:用Sharedpreference.Edit的put()存储数据,然后用commit()提交数据。
读取时,用Sharreoreferences的get()读取数据。
三。存储路径:data/data/包名/shared-prefs下,以XML文件的形式存储。
四。具体实例:
package com.example.testsharepreference;
import android.app.Activity;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.widget.Toast;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
/**
*保存数据
*/
public void saveData(View view){SharedPreferences share=null;
//得到SharePreferences对象,第一个参数:指定文件名,第二个参数:操作模式
share=getSharedPreferences("data", MODE_PRIVATE);
//得到SharedPreferen.Edit对象
SharedPreferences.Editor edit=share.edit();
//用edit存储数据
edit.putString("name", "张三");
edit.putInt("age", 20);
edit.putBoolean("男的?", true);
//提交数据,存储完成
edit.commit();
Toast.makeText(this, "数据存储完成", Toast.LENGTH_LONG).show();
}
/**
*读取数据
*/
public void getData(View view){
SharedPreferences share_get=null;
share_get=getSharedPreferences("data", MODE_PRIVATE);
//根据键获取数据,第二个参数为默认值,若没有指定的键,则返回默认值
boolean isMan=share_get.getBoolean("男的?", false);
int age=share_get.getInt("age", 0);
String name=share_get.getString("name", null);
Toast.makeText(this, name+String.valueOf(isMan)+String.valueOf(age),Toast.LENGTH_LONG).show();
}
}
五。运行效果如下: