Java.io.File.listFiles() 方法
描述
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.tutorialspoint; 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:\test\child_test.txt