前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Android开发笔记(三十二)文件基础操作

Android开发笔记(三十二)文件基础操作

作者头像
aqi00
发布2019-01-18 10:42:56
1.1K0
发布2019-01-18 10:42:56
举报
文章被收录于专栏:老欧说安卓老欧说安卓

File类

File类是java中的文件操作工具类,它的常用方法如下: File构造函数 : 根据文件路径构造File对象 delete : 删除文件 exists : 判断文件是否存在 getName : 获取文件的文件名 getPath : 获取文件的目录路径 getParent : 获取上级目录路径 isDirectory : 判断是否为目录/文件夹 isFile : 判断是否为文件 length : 获取该文件的大小 list : 列出该目录下的所有文件(夹),返回String数组 listFiles : 列出该目录下的所有文件(夹),返回File数组 mkdirs : 创建目录/文件夹 renameTo : 重命名文件,其实就是移动文件到指定目录 获取文件大小有两种方式,一种是使用File类的length方法,另一种是使用FileInputStream类的available方法。下面是两种方式的示例代码: 1、length方式

代码语言:javascript
复制
		File file = new File(file_path);
		long size_length = 0;
		if (file.exists() == true) {
			size_length = file.length();
		}

2、available方式

代码语言:javascript
复制
		File file = new File(file_path);
		long size_available = 0;
		if (file.exists() == true) {
			try {
				FileInputStream fis = new FileInputStream(file);
				size_available = fis.available();
			} catch (Exception e) {
				e.printStackTrace();
			}
		}

Environment类

Environment类是Android中获取各种目录信息的工具,主要方法如下: getDataDirectory : 获得系统data目录的路径 getDownloadCacheDirectory : 获得下载缓存目录的路径 getExternalStorageState : 获得外部存储的状态 MEDIA_UNKNOWN : 未知 MEDIA_REMOVED : 已经移除 MEDIA_UNMOUNTED : 未挂载 MEDIA_CHECKING : 正在检查 MEDIA_NOFS : 不支持的文件系统 MEDIA_MOUNTED : 已经挂载,且是可读写状态 MEDIA_MOUNTED_READ_ONLY : 已经挂载,且是只读状态 MEDIA_SHARED : 当前未挂载,但通过USB共享 MEDIA_BAD_REMOVAL : 未挂载就被移除 MEDIA_UNMOUNTABLE : 无法挂载 getExternalStorageDirectory : 获得外部存储(即SD卡)的路径 getExternalStoragePublicDirectory : 获得外部存储指定类型目录的路径 DIRECTORY_DCIM : 相片存放目录(包括相机拍摄的图片和视频) DIRECTORY_DOCUMENTS : 文档存放目录 DIRECTORY_DOWNLOADS : 下载文件存放的目录 DIRECTORY_MOVIES : 视频存放目录 DIRECTORY_PICTURES : 图片存放目录 DIRECTORY_MUSIC : 音乐存放目录 getRootDirectory : 获得系统根目录的路径 getStorageState : 获得指定目录的状态 isExternalStorageEmulated : 判断外部存储是否有效 isExternalStorageRemovable : 判断外部存储是否可以移除,该方法用于判断SD卡是系统自带的还是外部插入的,如是外部插入的该方法就返回true。但现在很多手机既支持自带SD卡,也支持外插SD卡,所以该方法不能用来鉴别系统有没有外插SD卡。

SD卡操作

app操作SD卡时需增加如下处理: 1、在AndroidManifest.xml中增加SD卡的权限配置

代码语言:javascript
复制
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAG" />
    <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />

2、代码中操作SD卡需要先判断当前SD卡是否已挂载。

代码语言:javascript
复制
if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)==true) {
    //下面补充SD卡的文件操作
}

点此查看Android开发笔记的完整目录

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2015年12月29日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • File类
  • Environment类
  • SD卡操作
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档