java列出目录下所有文件名

java列出目录下所有文件名

在实际项目中,经常会遇到这样的问题:想得到某个目录下的所有具有特定扩展名文件的文件名集合

解决方法:

1.定义自己的文件名过滤器类,这个类必须实现java.io.FilenameFilter接口

2.调用


下面是我的一个例子,目标:得到目录Constans.SCRIPT_DIR下所有扩展名为".sql"的文件的文件名集合

1.实现自己的文件名过滤类

/**
* 脚本文件过滤器
*
* @author <a href="mailto:[email protected]">jadmin</a>
*/
public class ScriptFilenameFilter implements FilenameFilter {

private String suffix;

public ScriptFilenameFilter(String suffix) {
   this.suffix = suffix;
}

public boolean accept(File dir, String name) {
   if(name.endsWith(suffix)) {
    return true;
   }
   return false;
}

}


2.调用

String[] names = new java.io.File(Constans.SCRIPT_DIR).list(new ScriptFilenameFilter(".sql"));

这样就得到了一个文件名数组,注:Constans.SCRIPT_DIR是【目录】常量串

你可能感兴趣的:(java列出目录下所有文件名)