第一个案例为大家分享了Android遍历特定目录下所有文件,包含子目录的,并删除最新创建的。
private boolean deleteLastFromFloder(String path) {
boolean success = false;
try {
ArrayList<File> images = new ArrayList<File>();
getFiles(images, path);
File latestSavedImage = images.get(0);
if (latestSavedImage.exists()) {
for (int i = 1; i < images.size(); i++) {
File nextFile = images.get(i);
if (nextFile.lastModified() > latestSavedImage.lastModified()) {
latestSavedImage = nextFile;
}
}
Log.e("brady", "images = " + latestSavedImage.getAbsolutePath());
success = latestSavedImage.delete();
}
} catch (Exception e) {
e.printStackTrace();
}
return success;
}
private void getFiles(ArrayList<File> fileList, String path) {
File[] allFiles = new File(path).listFiles();
for (int i = 0; i < allFiles.length; i++) {
File file = allFiles[i];
if (file.isFile()) {
fileList.add(file);
} else if (!file.getAbsolutePath().contains(".thumnail")) {
getFiles(fileList, file.getAbsolutePath());
}
}
}
第二个案例介绍了文件夹遍历Android代码,供大家参考,具体内容如下
package com.once;
import java.io.File;
import java.util.ArrayList;
import java.util.LinkedList;
public class DirTraversal {
//no recursion
public static LinkedList<File> listLinkedFiles(String strPath) {
LinkedList<File> list = new LinkedList<File>();
File dir = new File(strPath);
File file = dir.listFiles();
for (int i = 0; i < file.length; i++) {
if (file.isDirectory())
list.add(file);
else
System.out.println(file.getAbsolutePath());
}
File tmp;
while (!list.isEmpty()) {
tmp = (File) list.removeFirst();
if (tmp.isDirectory()) {
file = tmp.listFiles();
if (file == null)
continue;
for (int i = 0; i < file.length; i++) {
if (file.isDirectory())
list.add(file);
else
System.out.println(file.getAbsolutePath());
}
} else {
System.out.println(tmp.getAbsolutePath());
}
}
return list;
}
//recursion
public static ArrayList<File> listFiles(String strPath) {
return refreshFileList(strPath);
}
public static ArrayList<File> refreshFileList(String strPath) {
ArrayList<File> filelist = new ArrayList<File>();
File dir = new File(strPath);
File files = dir.listFiles();
if (files == null)
return null;
for (int i = 0; i < files.length; i++) {
if (files.isDirectory()) {
refreshFileList(files.getAbsolutePath());
} else {
if(files.getName().toLowerCase().endsWith("zip"))
filelist.add(files);
}
}
return filelist;
}
}
您可能感兴趣的文章:Android编写文件浏览器简单实现Android中调用系统的文件浏览器及自制简单的文件浏览器微信或手机浏览器在线显示office文件(已测试ios、android)读写Android中assets目录下的文件的方法详解Android遍历所有文件夹和子目录搜索文件读取android根目录下的文件或文件夹实例Android 将文件下载到指定目录的实现代码Android编程实现将压缩数据库文件拷贝到安装目录的方法Android开发实现读取assets目录下db文件的方法示例Android编程实现简单文件浏览器功能