找出所有文件 java_找出某目录下所有的java文件

1.[代码][Java]代码

import java.io.File;

import java.io.FilenameFilter;

import java.util.regex.Pattern;

//search all .java files in the "E:\Test" directory

public class RecurSearchJavaFile {

public static void main(String[] args) {

RecurSearchJavaFile dl = new RecurSearchJavaFile();

File path = new File("E:\\Test");

dl.search(path);

}

//recursive search all .java files

private void search(File path) {

File[] files = path.listFiles();

//search all .java files in the directory of "E:\Test",

//but not include those .java files occurs in the sub-directory

if(path.getAbsolutePath().equalsIgnoreCase("E:\\Test") ){

listFilteredFileName(path);

}

//search all .java files in the sub-directory

for (File file : files) {

if (file.isDirectory()) {

//File dir = file.getAbsoluteFile();

listFilteredFileName(file);

search(file);

}

}

}

//show .java files by directory

private void listFilteredFileName(File file) {

String[] files = file.list(new DirFilter("\\w+.java"));

for (String fileName: files) {

System.out.println(fileName + " ");

}

}

}

//to match a given regex

class DirFilter implements FilenameFilter {

private Pattern pattern;

public DirFilter(String regex) {

pattern = Pattern.compile(regex);

}

public boolean accept(File dir, String name) {

return pattern.matcher(name).matches();

}

}

/*output result*/

Hello.java

World.java

Any.java

fodler1_1File1.java

folder1_1_1File1.java

folder2File1.java

folder2File2.java

hihi.java

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值