android数据存储之SharedPreferences
2016-02-18 18:40
746 查看
SharedPreferences是Android提供的一种轻量级的数据存储方式,主要用来存储一些简单的配置信息,例如:默认的欢迎语,登录用户名和密码等。其以键值对的方式存储,使得我们能很方便济宁读取和存入。数据以xml文件形式存储到data目录下。
SharedPreferences对象本身只能获取数据而不支持存储和修改数据,存储和修改数据时通过Editor对象实现的。
SharedPreferences的使用步骤:
1、获取SharedPreferences对象;
2、获得SharedPreferences.Editot对象;
3、通过Editor的接口的putString、putInt、putBoolean、putFloat等方法以key-value方式存储不同的数据类型;
4、通过Editor接口的commit方法提交数据,达到最后保存的目的。
SharedPreferences对象本身只能获取数据而不支持存储和修改数据,存储和修改数据时通过Editor对象实现的。
SharedPreferences的使用步骤:
1、获取SharedPreferences对象;
2、获得SharedPreferences.Editot对象;
3、通过Editor的接口的putString、putInt、putBoolean、putFloat等方法以key-value方式存储不同的数据类型;
4、通过Editor接口的commit方法提交数据,达到最后保存的目的。
package com.example.sharedpreferencesdemo; import android.content.SharedPreferences; import android.content.SharedPreferences.Editor; import android.os.Bundle; import android.support.v7.app.ActionBarActivity; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.Toast; public class MainActivity extends ActionBarActivity { SharedPreferences sharedPreferences; Editor editor; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.fragment_main); Button button = (Button) findViewById(R.id.btn); //获取SharedPreferences对象,并将信息私有化,禁止其他应用访问 sharedPreferences = getSharedPreferences("userMsg", MODE_PRIVATE); //获取Editor editor = sharedPreferences.edit(); //以键值对的形式存储数据 editor.putString("username", "张三"); editor.putInt("age", 20); editor.putBoolean("marry", false); editor.putLong("date", System.currentTimeMillis()); //提交数据 editor.commit(); Log.e("button", button.toString()); button.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { /* * 获取数据,第一个参数为数据存储的键,第二个参数为当数据为空是设置的默认数据, * 如果数据没有存储上就默认“暂无数据” */ String name = sharedPreferences.getString("username", "暂无数据"); int age = sharedPreferences.getInt("age",0); boolean marry = sharedPreferences.getBoolean("marry", true); Log.e("name", name); Log.e("age", age + ""); Log.e("marry", marry + ""); } }); } }
相关文章推荐
- Android 比较两个时间段是否有交集或重复
- android 自定义Dialog背景透明及显示位置设置
- Android异步加载器Loader的使用
- [转]Android How to Download and Make Volley.jar
- Android自定义对话框(Dialog)位置,大小
- Android触摸屏事件派发机制一(View篇)
- android studio 中去除应用标题栏
- Android Studio 在导入第三方包之后出现的gradle DSL method not found 问题原因及解决方案
- Android Animation动画
- android 如何优雅地给Activity和Fragement传入参数
- Android中onSharedPreferenceChangeListener类
- 解决android内存泄露
- RxJava Android 新人实践
- Android常用设计模式(二)
- Android Day02 知识点
- android.mk文件解析
- Android屏幕分辨率适配
- android hover监控鼠标移动事件
- Android 5.0 Lollipop中新的Activity过渡效果介绍
- Android 内存泄漏总结