下面是代碼我迄今:如何導入Java中的目錄(和子目錄)列表?
在這一點上,它會從存儲目錄C的所有* .java文件的列表:\ 1.3 \字符串數組文件名中 。然而,我想存儲所有的java文件的列表也存在子目錄(最好與他們的路徑在C:\ 1.3 \指定也。我該怎麼去做這件事?謝謝!
下面是代碼我迄今:如何導入Java中的目錄(和子目錄)列表?
在這一點上,它會從存儲目錄C的所有* .java文件的列表:\ 1.3 \字符串數組文件名中 。然而,我想存儲所有的java文件的列表也存在子目錄(最好與他們的路徑在C:\ 1.3 \指定也。我該怎麼去做這件事?謝謝!
據我所知,你將不得不手動(遞歸),即你將不得不打電話列表(過濾器)的所有子目錄的C:\ 1.3 \,等等......
恐怕你不能用list(FilenameFilter)
方法做到這一點你必須列出所有的文件和目錄,然後執行過濾自己事情是這樣的:。
public List<File> getFiles(File dir, FilenameFilter filter) {
List<File> ret = new ArrayList<File>();
for (File f : dir.listFiles()) {
if (f.isDirectory()) {
ret.addAll(getFiles(f, filter));
} else if (filter.accept(dir, f.getName())) {
ret.add(f);
}
}
return ret;
}
你應該看看DirectoryWalker來自Apache