Android数据存储(二)----- SharedPreferences存储
2016-06-25 19:32
399 查看
SharePreferences是使用键值对的方式来存储数据的,而且SharePreferences还支持多种不同的数据类型存储。
一、获得SharePreferences对象(三种方法)
1 . Context类中的getSharePreferences()方法
该方法接受两个参数,第一个参数用来指定SharePreferences文件的名称,如果指定的文件不存在则会创建一个。第二个参数是用于指定操作方式,主要有MODE_PRIVATE和MODE_MULTI_ROCESS两种方式。
MODE_PRIVATE ——– 这种模式是默认的操作模式,和传入0效果相同,表示只有当前应用程序才会对这个文件进行读写。
MODE_MULTI_PROCESS ——- 这种模式一般是用于多个进程中对同一个文件进行读写的情况。
注:SharePreferences文件都是存放在/data/data/packagename/share_prefs/目录下的
2 . Activity类中的getPreferences()方法
这个方法和Context类中的getSharedPreferences()方法很类似,只是只接受一个操作模式参数,因为这个方法会把当前活动的类名作为SharePreferences文件的文件名。
3 . PreferenceManager类中的PreferenceManager.getDefaultSharedPreferences()方法。
这是一个静态方法,它接受一个Context参数,并自动使用当前应用程序的包名作为前缀来命名SharePreferences文件。
二、向SharePreferences文件中存储数据
1 . 调用SharedPreferences对象的edit()方法来获取一个SharePreferences.Editor对象。
2 . 向SharePreferences.Editor对象中添加数据。
3 . 调用commit()方法将添加的数据进行提交,从而完成数据存储。
三、 从SharePreferences文件中获取数据。
1 . 获得SharePreferences对象
2 . 使用提供的getXX()方法获取
此处的getXX()方法需要传入两个值,第一个为当初存储数据时的建,第二个参数是当获取不到需要的值时提供的默认值。
一、获得SharePreferences对象(三种方法)
1 . Context类中的getSharePreferences()方法
该方法接受两个参数,第一个参数用来指定SharePreferences文件的名称,如果指定的文件不存在则会创建一个。第二个参数是用于指定操作方式,主要有MODE_PRIVATE和MODE_MULTI_ROCESS两种方式。
MODE_PRIVATE ——– 这种模式是默认的操作模式,和传入0效果相同,表示只有当前应用程序才会对这个文件进行读写。
MODE_MULTI_PROCESS ——- 这种模式一般是用于多个进程中对同一个文件进行读写的情况。
getSharedPreferences("data", MODE_PRIVATE);
注:SharePreferences文件都是存放在/data/data/packagename/share_prefs/目录下的
2 . Activity类中的getPreferences()方法
这个方法和Context类中的getSharedPreferences()方法很类似,只是只接受一个操作模式参数,因为这个方法会把当前活动的类名作为SharePreferences文件的文件名。
getPreferences(MODE_PRIVATE);
3 . PreferenceManager类中的PreferenceManager.getDefaultSharedPreferences()方法。
这是一个静态方法,它接受一个Context参数,并自动使用当前应用程序的包名作为前缀来命名SharePreferences文件。
PreferenceManager.getDefaultSharedPreferences(this)
二、向SharePreferences文件中存储数据
1 . 调用SharedPreferences对象的edit()方法来获取一个SharePreferences.Editor对象。
SharedPreferences sharedPreferences = getSharedPreferences("data", MODE_PRIVATE); SharedPreferences.Editor editor = sharedPreferences.edit();
2 . 向SharePreferences.Editor对象中添加数据。
editor.putString("key1", "value1");
3 . 调用commit()方法将添加的数据进行提交,从而完成数据存储。
editor.commit();
三、 从SharePreferences文件中获取数据。
1 . 获得SharePreferences对象
SharedPreferences sharedPreferences = getSharedPreferences("data", MODE_PRIVATE);
2 . 使用提供的getXX()方法获取
sharedPreferences.getString("key1", null);
此处的getXX()方法需要传入两个值,第一个为当初存储数据时的建,第二个参数是当获取不到需要的值时提供的默认值。
相关文章推荐
- android 自定义控件(五) 音量切换
- 创建ANDROID开发环境
- Android Studio 关联源码问题
- Android EditView 输入限制(软键盘限制)
- adb操作命令详解及大全
- Weex Android SDK源码分析之界面渲染(下)
- Android挂断电话代码
- 打造高质量Android应用读书笔记
- Android自定义ProgressBar
- android桌面快捷方式添加数字角标的踩坑之路
- Android捕捉图像后在SurfaceView上变形显示问题的处理
- android中handler和looper的工作原理
- php做接口+android 请求API接口并展示到ListView例子
- Android ProgressBar详解以及自定义
- InterlliJ /Android Studio “Cannot resolve symbol” 解决办法
- android actionbar 网页在线生成style(修改配置)
- Android中内容观察者的使用---- ContentObserver类详解
- Android获取进程的权限信息
- Activity中windowSoftInputMode属性
- AsyncTask