您的位置:首页 > 编程语言 > Java开发

java获取指定路径下的指定文件/java.io.File.listFiles(FilenameFilter filter)

2016-07-13 18:00 686 查看
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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: