jdk文档说明
方法:listFiles(Filefilter filter)用法
Filefilter是一个接口,接口中有一个抽象方法:Public bollean accpet(File pathname);
要想实现Filefilter 要创建一个类来实现接口
就比如创建一个myFilter类实现Filefilter接口
class Myfilter implements Filefilter{
public boolean accpet(File pathname){
retrun pathname.Getname().endwith(".txt");
};
上述代码实现了Filefilter接口的实现 以及accpet方法的重写 返回的类型是.txt文件。
如图:
例:
public static void main(String[] args){
File file = new File("g:\\a")
File[] fileArr = file.listFiles( new Myfilter());
for(File f :fileArr){
System.out.println(f);
}
}
该案例实现了从g盘下面的a文件夹里,文件后缀名为.txt文件的信息打印输出。
总结:
文件过滤器实现原理
1.首先listFiles 获得指定目录下的所有全路径
2.然后listFiles 将指定目录下的所有全路径传递给accpet方法中的参数(File file)
3.通过调用accpet()方法进行判断符合条件的文件内容将会返回给 File[]列表
4.最后通过增强for循环实现打印 指定类型的文件