Android文件管理--请叫我王优秀

一,实现的功能

  • 1.实现android各个版本看可以任意访问内置存储卡,自定义文件样式并且列表里面展示。
  • 2.实现对文件的剪切,复制,删除,移动。
  • 3.实现对文件目录的排序(日期,大小,名称)
  • 4.实现创建不同类型的文件,例如wold,excle,xml等文件。

如下图所示:实现效果
image

image


二,开始代码

- 自定义炫酷Activity窗口,并且用ListView或者RecylerView来展示我们所要访问的文件夹路径下的所有文件。

遇到的问题解决:

  • 对于手机存储卡的选择。存放位置的选择(内置存储卡,外置SD卡),这个我们可以通过反射来获取内存卡管理者的StorageVolume这样就可以遍历每一个数组,通过isRemoveBle来判断是否可以移除(能移除的当然是有外置存储卡了)。近两年手机都是内置卡,什么16,32,64,128G真的搞个100G以上的你要干啥,而且很多时候手机都没有外置存储卡,这里舍弃了老人机了,我姥爷用的老人机就不提了。所以对于开发者来说,我都会果断选择内置存储卡,存放自己项目中的文件。

下面开始兴建一个项目MyFileManager

  • 手机:手机三星s8
  • 版本:Android8.0.0
  • 手机:三星Note4
  • 版本:6.1.0

拿到外置存储卡: Environment.getExternalStorageDirectory().absolutePath
Environment.getExternalStorageDirectory().absolutePath可以拿到存储卡的,如果有外置sd卡就拿到外置sd卡,如果没有就会内置sd卡,由于我手机都是内置。
当然这里我们可以判断是否具有外置存储卡。这一两年内好多手机都没了外置卡吧,我记得我老爷手机有外置卡槽。这里通过反射我们可以判断是否具有外置卡。代码如下:

   /**
     * 反射调用获取内置存储和外置sd卡根路径
     * @param mContext    上下文
     * @param haveSdCard 是否有卡槽外置卡,fals
  • 3
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 13
    评论
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值