java.io.File.listFiles(FilenameFilter filter)方法实例
java.io.File.listFiles(FilenameFilter filter) 返回抽象路径名数组,表示在目录中此抽象路径名表示,满足指定过滤器的文件和目录。
声明
以下是java.io.File.listFiles(FilenameFilter filter)方法的声明:
public File[] listFiles(FilenameFilter filter)
参数
-
filter - 文件名过滤器
返回值
该方法返回抽象路径名数组,表示在目录中此抽象路径名表示,满足指定过滤器的文件和目录。
异常
-
SecurityException -- 如果安全管理器存在并且其SecurityManager.checkRead(java.lang.String) 方法拒绝对文件的读访问
例子
下面的例子显示java.io.File.listFiles(FilenameFilter filter)方法的用法。
package com.yiibai; import java.io.File; import java.io.FilenameFilter; public class FileDemo { public static void main(String[] args) { File f = null; File[] paths; try{ // create new file f = new File("c:/test"); // create new filename filter FilenameFilter fileNameFilter = new FilenameFilter() { @Override public boolean accept(File dir, String name) { if(name.lastIndexOf('.')>0) { // get last index for '.' char int lastIndex = name.lastIndexOf('.'); // get extension String str = name.substring(lastIndex); // match path name extension if(str.equals(".txt")) { return true; } } return false; } }; // returns pathnames for files and directory paths = f.listFiles(fileNameFilter); // for each pathname in pathname array for(File path:paths) { // prints file and directory paths System.out.println(path); } }catch(Exception e){ // if any error occurs e.printStackTrace(); } } }
让我们编译和运行上面的程序,这将产生以下结果:
c: estchild_test.txt