您的位置:首页 > 移动开发 > Android开发

Android遍历手机内所有文件

2017-01-18 11:11 302 查看
通常使用递归的方式遍历内存中的所有文件

首先遍历所有文件的方法

//遍历手机所有文件 并将路径名存入集合中 参数需要 路径和集合
public void recursionFile(File dir, List<String> images) {
//得到某个文件夹下所有的文件
File[] files = dir.listFiles();
//文件为空
if (files == null) {
return;
}
//遍历当前文件下的所有文件
for (File file : files) {
//如果是文件夹
if (file.isDirectory()) {
//则递归(方法自己调用自己)继续遍历该文件夹
recursionFile(file,images);
} else { //如果不是文件夹 则是文件
//如果文件名以 .mp3结尾则是mp3文件
if (file.getName().endsWith(".jpg")) {
//往图片集合中 添加图片的路径
images.add(file.getAbsolutePath());
}
}
}
}


然后调用该遍历方法得到自己想要的内容

//找到所有图片(实则为图片所在地址) 并存入集合中
public ArrayList<String> getimages() {
//获得外部存储的根目录
File dir = Environment.getExternalStorageDirectory();
ArrayList<String> images = new ArrayList<String>();
//调用遍历所有文件的方法
recursionFile(dir,images);
//返回文件路径集合
return images;
}


最后别忘记了在AndroidManifest.xml文件中加上对手机内存的访问权限

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: