FilenameFilter使用方法介绍

一、FilenameFilter介绍

Java.io.FilenameFilter是文件名过滤器,用来过滤不符合规格的文件名,并返回合格的文件;
一般地:
(1)String[] fs = f.list();
(2)File[] fs = f.listFiles();
这两个方法返回f下的所有文件或目录;
FilenameFilter用来把符合要求的文件或目录返回;
因此可以调用:
(1)String []fs = f.list(FilenameFilter filter);;
(2)File[]fs = f.listFiles(FilenameFilter filter);

二、FilenameFilter的使用举例

//System.getProperty("catalina.home")获取到Tomcat的根路径,比如:D:\Program Files (x86)\tomcat\apache-tomcat-7.0.70-windows-x86\apache-tomcat-7.0.70

File dataDirectory = new File(System.getProperty("catalina.home") + File.separator + "test" + File.separator + "conf");// 这里获取的是:D:\Program Files (x86)\tomcat\apache-tomcat-7.0.70-windows-x86\apache-tomcat-7.0.70\test\conf
        // 数据源文件必定要是properties类型。 
        File[] dataFiles = dataDirectory.listFiles(new FilenameFilter() {
//以config_db开头,文件后缀为.properties的将被选出来,其余被过滤掉
            @Override
            public boolean accept(File dir, String name) {
                String fileName = name.toLowerCase();

                if (fileName.endsWith(".properties")) {
                    if(fileName.startsWith("config_db")) {
                        return true;
                    }
                }
                return false;
            }
        });

FilenameFilter使用方法介绍_第1张图片

你可能感兴趣的:(javase)