android下对存储的操作
16lz
2021-01-25
android下对sd卡的存储操作一般是通过Environment来实现的。主要有如下集中操作。
//获取sd卡中的信息,注意这里的sdcard指的是所有存储设备下的sdcard目录File sdcard=Environment.getExternalStorageDirectory();System.out.println("sdcard:"+sdcard.getName());//获取数据目录,这里的数据目录一般指的是由程序生成的文件,这些文件是由程序查看的。比如小型数据库sqlite,xml格式的存储对象SharedPreferences等等,对应data目录File data = Environment.getDataDirectory();System.out.println("data:"+data.getName());//获取Android 下载/缓存内容目录。对应cache目录File cache = Environment.getDownloadCacheDirectory();System.out.println("cache:"+cache.getName());//获取系统文件,对应system目录File root = Environment.getRootDirectory();System.out.println("root:"+root.getName());// 取一个高端的公用的外部存储器目录来摆放某些类型的文件File publicDirectory = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES);System.out.println(Environment.DIRECTORY_PICTURES);System.out.println("publicDirectory:" + publicDirectory);//获取sdcard的状态,String state = Environment.getExternalStorageState();System.out.println("state:"+state);其中state的状态有:
- MEDIA_BAD_REMOVAL
解释:返回getExternalStorageState(),表明SDCard 被卸载前己被移除 - MEDIA_CHECKING
解释:返回getExternalStorageState(),表明对象正在磁盘检查。 - MEDIA_MOUNTED
解释:返回getExternalStorageState(),表明对象是否存在并具有读/写权限 - MEDIA_MOUNTED_READ_ONLY
解释:返回getExternalStorageState(),表明对象权限为只读 - MEDIA_NOFS
解释:返回getExternalStorageState(),表明对象为空白或正在使用不受支持的文件系统。 - MEDIA_REMOVED
解释:返回getExternalStorageState(),如果不存在 SDCard 返回 - MEDIA_SHARED
解释:返回getExternalStorageState(),如果 SDCard 未安装 ,并通过 USB 大容量存储共享 返回 - MEDIA_UNMOUNTABLE
解释:返回getExternalStorageState(),返回SDCard 不可被安装 如果 SDCard是存在但不可以被安装 - MEDIA_UNMOUNTED
解释:返回getExternalStorageState(),返回 SDCard 已卸掉如果 SDCard 是存在但是没有被安装
09-29 08:20:45.386: I/System.out(281): sdcard:sdcard
09-29 08:20:45.386: I/System.out(281): data:data
09-29 08:20:45.386: I/System.out(281): cache:cache
09-29 08:20:45.386: I/System.out(281): root:system
09-29 08:20:45.386: I/System.out(281): Pictures
09-29 08:20:45.410: I/System.out(281): publicDirectory:/mnt/sdcard/Pictures
09-29 08:20:45.410: I/System.out(281): state:mounted
对应的图:
更多相关文章
- 一款常用的 Squid 日志分析工具
- GitHub 标星 8K+!一款开源替代 ls 的工具你值得拥有!
- RHEL 6 下 DHCP+TFTP+FTP+PXE+Kickstart 实现无人值守安装
- Linux 环境下实战 Rsync 备份工具及配置 rsync+inotify 实时同步
- 在Ubuntu16.04下编译FFmpeg4.2.3
- Android(安卓)签名和发布应用程序
- android studio信鸽推送10004错误
- Android(安卓)APK JNI sample (JAVA JNI)
- Android开发笔记