我想制作一个可以计算文件夹及其子文件夹中图像数量的应用程序。任何帮助将不胜感激!
问问题
930 次
1 回答
4
这是使用 FileFilter 和 File.listFiles() 进行的简单图形搜索。你去:
private ArrayList<File> listFiles(String folder) {
ArrayList<File> files = new ArrayList<File>();
files.add(new File(folder));
return listFiles(files);
}
private ArrayList<File> listFiles(ArrayList<File> files) {
ArrayList<File> result = new ArrayList<File>();
for (int i = 0; i < files.size(); i++) {
if (files.get(i).isDirectory()) {
File file = files.get(i);
files.remove(i);
File[] files2 = file.listFiles(filter);
if (files2 == null)
continue;
ArrayList<File> f = new ArrayList<File>();
for (int j = 0; j < files2.length; j++) {
f.add(files2[j]);
}
result.addAll(listFiles(f));
} else {
result.add(files.get(i));
}
}
return result;
}
FileFilter filter = new FileFilter() {
@Override
public boolean accept(File arg0) {
return arg0.getName().endsWith(".jpg") || arg0.getName().endsWith(".bmp")
|| arg0.getName().endsWith(".png") || arg0.isDirectory();
}
};
于 2013-03-15T14:36:46.430 回答