创建了一个FileFilter
类,此类根据文件名的扩展名是否为.txt
来筛选文件。创建FileFilter
实例之后,需要将此实例作为参数传给File的listFiles(fileFilter)
方法,此方法会返回符合条件文件的数组:
import java.io.File;
import java.io.FileFilter;
public class FileUtil {
public void myListFiles(String dir) {
File directory = new File(dir);
if (!directory.isDirectory()) {
System.out.println("No directory provided");
return;
}
File[] files = directory.listFiles(filefilter);
for (File f : files) {
System.out.println(f.getName());
}
}
/* create a FileFilter and override its accept-method */
FileFilter filefilter = new FileFilter() {
public boolean accept(File file) {
/* if the file extension is ".txt" return true, else false */
if (file.getName().endsWith(".txt")) {
return true;
}
return false;
}
};
public static void main(String[] args) {
FileUtil fileutil = new FileUtil();
fileutil.myListFiles("C:\\\\python3.6");
}
}
执行结果:
LICENSE.txt
NEWS.txt