情景:需要得到一個(gè)主文件夾中的所有文件,主文件夾下的文件目錄中可能有文件和文件夾混雜。也就是得到所有最底層的文件。
public ListgetFilenames(String pathname) { File dirfile = new File(pathname); List filenames = new ArrayList<>();
assert (dirfile.isDirectory()) : "pathname must be directory!";
if (dirfile.isDirectory()) {
File[] filelist = dirfile.listFiles();
for (File file : filelist) {
if (file.isFile())//if filepath is file
{
filenames.add(pathname + System.getProperty("file.separator") + file.getName());
} else {
filenames.addAll(getFilenames(file.getPath()));
}
}
}
return filenames;
}