手机外部存储:所有兼容Android的设置都支持一个可共享的“外部存储(extranal storage)”,可用来保存文件,这可以是一个可移动的存储设备(比如SD卡)或者一个内部的(不可移动的)存储。保存在外部存储的文件是可全局读写的。
1. Sdcard存储的特点(外部存储):
* 依赖于Sdcard,使用SDCard存储,需先检测其状态,能够挂载成功
* 存在Sdcard的文件是可全局读写的
* 写入Sdcard时,需要权限
2. 关注点:
* Environment.getExternalStorageState() 取得外部存储状态 //环境
* 将数据存到SD卡的路径有4种:公共共享和私有缓存文件、私有数据、外存的根路径 /mnt/sdcard ==》指向了storage/sdcard
1、公共共享的存储路径:Environment.getExternalStoragePublicDirectory(Environment.Directory_downloads); /storage/sdcard/downloads/
2、 ·私有缓存文件的存储路径:context.getExternalFilesDir(Environment.DIRECTORY_DOWNLOADS)
/storage/sdcard/android/data/<包名>/files/<类型>/
3、私有数据的存储路径:context.getExternalCacheDir() /storage/sdcard/android/data/<包名>/cache
略
4、 ·取得外存的根路径Environment.getExternalStorageDirectory() /storage/sdcard
略,可以自行尝试
需要注意的是:当应用删除时,公共共享和外村的根路径存放路径下的数据不会被删除,其它两个个都会被删除
* 写入外部存储的权限
android.permission.MOUNT_UNMOUNT_FILESYSTEMS //挂载、卸载文件系统
android.permission.WRITE_EXTERNAL_STORAGE //写外部存储权限
android.permission.READ_EXTERNAL_STORAGE //读外部存储的权限
在android 4.0以后,假如你的外部存储的路径不规范,则需要该权限
写入外部存储步骤:
1、设置权限
·挂载/卸载文件系统权限 android.permission.MOUNT_UNMOUNT_FILESYSTEMS
·外部存储写入权限 android.permission.WRITE_EXTRANAL_STORAGE
`外部存储读取权限 android.permission.READ_EXTRANAL_STORAGE
外部存储读写权限在4.0以上的版本后默认有,所以可以不写这两个权限也没问题。
2、判断外部存储状态:是否处于挂载状态。 media_mounted
1、设置存放数据的路径
2、开辟一个输出流,写入数据
3、关闭流
代码如下:
读取外部存储数据:类似
总计:这两篇文章就大概介绍了手机存储数据的两种方法,一种外部存储,一种内部存储,但是存储的文件的数据格式不好,接下来将学习SharedPreferences 俗称:偏好设置存储。 存储数据的格式是xml。
1. Sdcard存储的特点(外部存储):
* 依赖于Sdcard,使用SDCard存储,需先检测其状态,能够挂载成功
* 存在Sdcard的文件是可全局读写的
* 写入Sdcard时,需要权限
2. 关注点:
* Environment.getExternalStorageState() 取得外部存储状态 //环境
* 将数据存到SD卡的路径有4种:公共共享和私有缓存文件、私有数据、外存的根路径 /mnt/sdcard ==》指向了storage/sdcard
1、公共共享的存储路径:Environment.getExternalStoragePublicDirectory(Environment.Directory_downloads); /storage/sdcard/downloads/
2、 ·私有缓存文件的存储路径:context.getExternalFilesDir(Environment.DIRECTORY_DOWNLOADS)
/storage/sdcard/android/data/<包名>/files/<类型>/
3、私有数据的存储路径:context.getExternalCacheDir() /storage/sdcard/android/data/<包名>/cache
略
4、 ·取得外存的根路径Environment.getExternalStorageDirectory() /storage/sdcard
略,可以自行尝试
需要注意的是:当应用删除时,公共共享和外村的根路径存放路径下的数据不会被删除,其它两个个都会被删除
* 写入外部存储的权限
android.permission.MOUNT_UNMOUNT_FILESYSTEMS //挂载、卸载文件系统
android.permission.WRITE_EXTERNAL_STORAGE //写外部存储权限
android.permission.READ_EXTERNAL_STORAGE //读外部存储的权限
在android 4.0以后,假如你的外部存储的路径不规范,则需要该权限
写入外部存储步骤:
1、设置权限
·挂载/卸载文件系统权限 android.permission.MOUNT_UNMOUNT_FILESYSTEMS
·外部存储写入权限 android.permission.WRITE_EXTRANAL_STORAGE
`外部存储读取权限 android.permission.READ_EXTRANAL_STORAGE
外部存储读写权限在4.0以上的版本后默认有,所以可以不写这两个权限也没问题。
2、判断外部存储状态:是否处于挂载状态。 media_mounted
1、设置存放数据的路径
2、开辟一个输出流,写入数据
3、关闭流
代码如下:
读取外部存储数据:类似
总计:这两篇文章就大概介绍了手机存储数据的两种方法,一种外部存储,一种内部存储,但是存储的文件的数据格式不好,接下来将学习SharedPreferences 俗称:偏好设置存储。 存储数据的格式是xml。