安卓中常用的数据存储方式之普通文件存取
来源:互联网 发布:广元广电网络节目表 编辑:程序博客网 时间:2024/06/16 21:01
安卓中常用的数据存储按文件的类型可以分为四大部分:
1.普通的文本文件,图片信息等:
保存在data/data/包名/files 目录下
2.配置文件,用于保存用户的个性化设置
保存在data/data/包名/shared_prefs 下
3.数据库文件。保存具有结构化的文件;
保存在data/data/包名/databases 下
4.缓存文件 一些临时性文件
保存在data/data/包名/cache 下
普通文件的保存:
可以先通过上下文获取文件的输入流 获取到的输入流带有文件的路径 然后直接往文件中写数据
<span style="font-size:18px;">//获取当前应用所在包名</span>
<span style="font-size:18px;">context.getFilesDir().toString() </span>
<span style="font-size:18px;">//直接获取流对象FileOutputStream fs= context.openFileOutput("info3.txt", context.MODE_PRIVATE);</span>这里获取流对象的最后一个参数是文件的权限
文件的权限大致有如下几种:
MODE_PRIVATE 私有权限只许程序本身访问
MODE_APPEND 私有权限 但是写数据的时候是可以追加的
MODE_WORLD_WRITR 最大权限 任何应用可读 已经过时
MODE_WORLD_READ 最大权限 任何应用可写 已经过时
扩展:安卓系统本身有管理自己文件权限的机制。在.apk文件安装的时候 系统会分配给每个应用不用的userid,当应用想访问其文件时
需要userid匹配才能得到数据
向SD卡中保存数据 :
一般说手机的内存是很小的,所以都会用到外部的存储,SD卡存储的数据是不安全的
一般用来保存音乐,视屏等大容量的文件。
注:我们可以在外部文件目录放置一个空的文件,命名为.nomedia这就会阻止安卓的媒体扫描器读取我们的媒体文件
如果想对SD卡中的文件进行读取操作的话,那就需要获取Environment 对象 ,当然想读取你的SD卡文件首先也是要获取权限的
在此列举一下Environment中的方法:
<span style="font-size:18px;">// 获取当前系统,外部存储器的根目录。public static File getExternalStorageDirectory()// 获取当前系统,data目录。public static File getDataDirectory()// 获取当前系统,system目录。public static File getRootDirectory()// 获取当前系统存储卡的状态。在Environment类中定义了如下几个String类型的状态:// - MEDIA_MOUNTED :已经安装到手机中,并可以对其进行读写操作。// - MEDIA_MOUNTED_READ_ONLY :已经安装到手机中,只可以对其进行读操作。// - MEDIA_UNMOUNTABLE :存储卡在手机中,但是没有装载到操作系统上。// - MEDIA_REMOVED :存储卡不在手机中。public static String getExternalStorageState()</span>
<span style="font-size:18px;">File file = Environment.getExternalStorageDirectory(); long space = file.getTotalSpace(); //获取总空间大小 单位byte long freeSpace = file.getFreeSpace(); //获取剩余空间</span>知道上面的一些方法,就可以通过输入输出流对SD卡中的文件进行读取操作,在此我就不再写示例代码了
0 0
- 安卓中常用的数据存储方式之普通文件存取
- 安卓中常用的数据存储方式之配置文件存取
- Android学习 —— 数据的存储与访问方式一: 文件存取
- ios开发----应用数据存储的常用方法之plist存取方法
- 我的 Android 之旅(十九)---数据存储--向SD卡中以实体类的方式存取数据
- Android数据存储方式之:文件存储
- Android上常用的几种本地数据存储方式:2、文件存储数据
- android数据存储与访问之使用普通文件
- Android数据存储与访问之使用普通文件
- android数据存储与访问之使用普通文件
- 数据存储常用方式
- android数据存储方式之二 文件存储:内部存储
- android存取数据方式:文件、SharedPreferences
- 安卓常用数据存储方式之数据库存储
- iOS应用数据存储的常用方式
- iOS应用数据存储的常用方式
- iOS数据存储的常用方式
- iOS 常用的数据存储方式
- 实现c语言中的可变参数函数
- 因SHA-256算法导致无法上传渠道包的问题
- 第三周项目1—顺序表的基本运算
- android 之对话框
- innerText 与 innerHtml的区别 (二)
- 安卓中常用的数据存储方式之普通文件存取
- css里一点很简单的常识
- JNI官方教程
- Caffe源码 比较好的一个网址
- IT笔试输入输出处理总结
- 61.mybatic insert异常:BindingException: Parameter 'name' not found
- Android-多屏幕适配
- Qt入门——三个臭皮匠顶个诸葛亮
- 62. mybatis 使用PageHelper不生效