package work;
import java.io.File;
public class Main {
/**
* 从键盘输入一个关键字,在 D:盘查找文件,如果文件名中包含该关键字,则输出这个文件的绝对路径,如果都没有找到,则输出找不到相关信息。
*
* @param args
*/
public static void main(String[] args) {
File dir = new File("D:/a");
int findFile = Main.findFile(dir, "c");
if (findFile <= 0) {
System.out.println("没有相关信息!");
}
}
/**
* 文件查找
*
* @param dir
* 查找的文件夹
* @param keyName
* 文件名关键字
*/
public static int findFile(File dir, String keyName) {
File[] listFiles = dir.listFiles();
if (listFiles == null) {
return -1;
}
int i = 0;// 是否找到相关文件的标记
for (File file : listFiles) {
// 得到当前dir目录下的所有文件,在这里处理
boolean contains = file.getName().contains(keyName);
if (contains) {// 找到符合的文件
System.out.println(file);
i++;
}
if (file.isDirectory()) {
// 递归
int findFile = findFile(file, keyName);
i += findFile;
}
}
return i;
}
}