学向勤中得,萤窗万卷书。这篇文章主要讲述android-数据存储之SharedPreferences相关的知识,希望能为你提供帮助。
数据存储:SharedPreferences
一、基础概要
1、说明
1>
主要用于存储单一小数据;
2>
存储类型:boolean、float、String、long、int
3>
数据保存路径:/data/data/packageName/shared_prefs/xxx.xml
4>
应用卸载时会删除此数据(实际上---包名文件夹下所有数据在应用卸载是都会删除"packageName")
5>
可以设置操作数据的权限,eg.只能是当前应用读取--MODE_PRIVATE(默认)
MODE_WORLD_WRITEABLE
MODE_WORLD_READABLE
MODE_MULTI_PROCESS
操作数据的权限可以通过查看源码得到,这些注释都写在源码注释上;
2、SharedPreferences
对应sp文件接口
【android-数据存储之SharedPreferences】---SharedPreferences
context.getSharedPreferences(String name,int mode)
得到sp实现类的对象
参数一:文件名(不带.xml,已经固定)
参数二:生成文件模式,包括上述四种。
---Editor sp.edit()
得到Editor对象
---Xxxsp.getXxx(name,defaultValue)
根据name得到指定数据,如果得不到返回defaultValue
3、Editor 更新sp文件接口
---Editor put(name,value)
保存一个键值对(但没有真正保存到文件中)
---Editor remove(name)
---Editor commit()
提交,数据真正保存到文件中。
以上方法返回值一样都是Editor类型,可以搞个方法链调用。
二、练习
1、保存数据步骤:
1>
得到sp对象
2>
得到editor对象
3>
得到要保存的数据
4>
使用editor保存数据
5>
提交
2、读取数据步骤:
1>
得到要查询数据的key
2>
根据key读取value
sp.getXxx(key,value);
三、重要代码
保存数据:
SharedPreferences sp=getSharedPreferences("kk", MODE_PRIVATE);
Editor ed=sp.edit();
//方法链调用
ed.putString("向日葵", "我是一朵美丽的向日葵")
.putString("向日葵", "我还是一朵美丽的向日葵")
//覆盖上一句value
.putString("康康", "我还是一朵美丽的向日葵")
.putInt("谢荣康", 23)
.putString("砂锅轩","不好吃").commit();
Toast.makeText(MainActivity.this, "保存成功", Toast.LENGTH_SHORT).show();
通过以上实验,每一个key对应一个唯一的value;存储文件如下:
文章图片
文件存储路径:
文章图片
读取数据:
文章图片
推荐阅读
- Unity Android设备的输入
- android 建造者模式简单认识
- cocos2d-x 3.x 搭建Android环境下的开发环境
- android中的文件操作详解以及内部存储和外部存储(转载)
- 基于Android移动终端的微型餐饮管理系统的设计与实现1-简介
- android 自定义带动画的统计饼图
- Android 四大组件之再论service
- Android之adb命令
- 在 Android 上配置 GNU/Linux Chroot 环境