文件名过滤器:
package test;
import java.io.File;
import java.io.FilenameFilter;
/**
* 文件名过滤器,根据文件后缀进行过滤
*
* @author Poison
*
*/
public class FilenameFilterBySuffix implements FilenameFilter {
private String suffix;
public FilenameFilterBySuffix(String suffix) {
super();
this.suffix = suffix;
}
@Override
public boolean accept(File dir, String name) {
return name.endsWith(suffix);
}
}
package test;
import java.io.File;
public class test {
public static void main(String[] args) {
File dir = new File("c:" + File.separator + "eclipse");
File[] files = dir.listFiles(new FilenameFilterBySuffix(".exe"));
for (File file : files) {
System.out.println(file.getName());// 打印文件名
}
}
}
输出:
eclipse.exe
eclipsec.exe
文件过滤器:
package test;
import java.io.File;
import java.io.FileFilter;
/**
* 文件过滤器,此处过滤为目录的
*
* @author Poison
*
*/
public class FileFilterByDir implements FileFilter {
@Override
public boolean accept(File pathname) {
return pathname.isDirectory();
}
}
package test;
import java.io.File;
public class test {
public static void main(String[] args) {
File dir = new File("c:" + File.separator + "eclipse");
File[] files = dir.listFiles(new FileFilterByDir());
for (File file : files) {
System.out.println(file);// 打印绝对路径
}
}
}
输出:
c:\eclipse\configuration
c:\eclipse\dropins
c:\eclipse\features
c:\eclipse\p2
c:\eclipse\plugins
c:\eclipse\readme