Test.java:
package cn.xxx.demo; import java.io.File; /* * File类的获取,文件获取过滤器 * 遍历目录的时候,可以根据需要,只获取满足条件的文件 * 遍历目录方法 listFiles()重载形式 * listFiles(FileFilter filter)接口类型 * 传递FileFilter接口的实现类 * 自定义FileFilter接口实现类,重写抽象方法, * 接口实现类对象传递到遍历方法listFiles */ public class Test { public static void main(String[] args) { File file = new File("c:\\demo"); File[] fileArr = file.listFiles(new MyFilter()); // 目录遍历, 传入文件过滤器参数 for(File f : fileArr){ System.out.println(f); } } }MyFilter.java(传给listFiles()的文件过滤器):
package cn.xxx.demo; import java.io.File; import java.io.FileFilter; /* * 自定义过滤器 * 实现FileFilter接口,重写抽象方法 */ public class MyFilter implements FileFilter{ // 实现FileFilter接口 public boolean accept(File pathname) { // 重写抽象方法。 return pathname.getName().endsWith(".java"); // pathname是传过来的全路径。getName()获取全路径中最后部分的文件(夹)名。 } }