すべてのファイルを反復処理せずに、フォルダー(およびすべてのsub *フォルダー)内のファイルの総数を取得し、再帰的に深くすることは可能ですか?
これは確かに非常に簡単ですが、もっと良い解決策があるのではないでしょうか。
private int totalFileCounter = 0;
private void countFiles(File f) {
if (f.isDirectory()) {
for (File fi : f.listFiles()) {
countFiles(fi);
}
} else {
totalFileCounter++;
}
}
編集:さて、私の質問はそれほど良い質問ではなかったかもしれません...つまり、Javaやファイルシステムなど、O(1)のファイルの総数を取得できる機能はありますか?すべてのソリューションには、ランタイムO(n)があります。