如何创建一个文件过滤器(Java中File类)

218 阅读1分钟

         在学习了File后,肯定有同学希望能够自己创建一个文件过滤器,下面就是创建的过程。首先找到需要过滤的文件目录,比如说​         对于上面这个文件夹,我希望能够自定义一个将txt文件过滤出来的过滤器,需要进行哪些步骤呢?文件过滤器是需要实现FilenameFilter接口以及接口中的accept方法,接着请看下面代码:

import java.io.File;
import java.io.FilenameFilter;
import java.util.Arrays;

public class FileDemo {
    public static void main(String[] args) {
        //创建一个File对象,将要过滤的目录地址写入
        File file = new File("D:/text1/text2");
        //获取该路径下的文件名数组,在list()方法的实参中实现FilenameFilter接口
        String[] names =file.list(new FilenameFilter() {
            @Override
            public boolean accept(File dir, String name) {
                //判断文件是否以.txt接口
                if(name.endsWith(".txt")){
                    return true;
                }
                return false;
            }
        });
        //打印过滤后的文件名数组
        System.out.println(Arrays.toString(names));
    }
}

        首先需要创建需要过滤的目录路径的File对象,在获取该对象的文件名集合,在获取的途中实现FilenameFilter接口,在accep方法中写入过滤条件,完成过滤。最后的输出结果为:

\