フォルダーとそのサブフォルダー内の画像数をカウントできるアプリを作りたいです。どんな助けでも大歓迎です!
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 に答える