FileFilter的使用(搜索指定后缀名的文件)

public File[] listFiles(FileFilter filter)
返回抽象路径名数组,这些路径名表示此抽象路径名表示的目录中满足指定过滤器的文件和目录。除了返回数组中的路径名必须满足过滤器外,此方法的行为与 listFiles() 方法相同。如果给定 filternull,则接受所有路径名。否则,当且仅当在路径名上调用过滤器的 FileFilter.accept(java.io.File) 方法返回 true 时,该路径名才满足过滤器。
boolean accept(File pathname)
测试指定抽象路径名是否应该包含在某个路径名列表中。

import java.io.File; import java.io.FileFilter; public class FileFilterTest implements FileFilter { /** * @param args * @author Ben Zeph */ String condition = ""; public FileFilterTest(String condition) { this.condition = condition; } @Override public boolean accept(File pathname) { // TODO Auto-generated method stub String filename = pathname.getName(); if (filename.lastIndexOf(condition) != -1) { return true; } else return false; } public static void main(String[] args) { // TODO Auto-generated method stub File root = new File("D://filter test"); if (!root.exists()) root.mkdir(); File[] files; files = root.listFiles(new FileFilterTest(".txt")); if (files.length != 0) for (int i = 0; i < files.length; i++) System.out.println(files[i].getAbsolutePath()); } }

 

你可能感兴趣的:(J2SE)