关于IO流中文件遍历实现文件过滤功能
- 创建一个File对象,保存你要遍历的文件夹路径
使用File对象的listFiles(FileFilter filter);方法
方法语法格式:
返回的是一个File数组,传递的参数是FileFilter接口类型
所以要我们要自定义一个FileFilter的实现类,重写accept(File pathname)方法,此方法返回一个boolean值
返回时判断里面是否有.java文件结尾的文件,如果有,则为true当accept方法返回true时,测试类里的listFiles(FileFilter filter)方法则会把获取的文件路径保存到File[] 数组中,再通过增强for遍历出!这样就实现了遍历文件过滤功能,只获取你指定文件类型。
import java.io.File;
import java.io.FileFilter;
/**
* Created by aongi on 2017/4/28.
* Version 1.0
*/
public class NewFilter implements FileFilter {
@Override
public boolean accept(File pathname) {
//toLowerCase()方法把所有name转为小写
return pathname.getName().toLowerCase().endsWith(".java");
}
}
下面测试类:
import java.io.File;
/**
* Created by aongi on 2017/4/28.
* Version 1.0
*/
public class Test1 {
public static void main(String[] args) {
File file =new File("E:\\JAVA\\eclipse");
File[] files=file.listFiles(new NewFilter());
for(File file1:files){
System.out.println(file1);
}
}
}