需求:递归遍历,指定目录下指定后缀名结尾的文件名称
*
* E:\itcast\20150322 文件夹中 有哪些.avi文件
* 分析:
* 1: 封装目录成 File对象
*
*
* 2: 获取到当前目录中所有的File对象
* 3: 获取到每一个File对象
* 4: 判断这个File对象 是否是文件夹?
* 是:
* 文件夹
* a: 递归操作, 回到步骤2
* 否:
* 文件
* a: 判断当前文件是否是.avi文件
* 是: 打印路径名称
* 否:
*
*/
public class DiguiTest3 {
public static void main(String[] args) {
//1: 封装目录成 File对象
//File pathFile = new File("E:\\itcast\\20150322");
File pathFile = new File("d:\\");
//2: 获取到当前目录中所有的File对象
getFiles(pathFile);
}
//获取到当前目录中所有的File对象
public static void getFiles(File pathFile) {
//System.out.println(pathFile);
if (pathFile == null) {
return ;
}
//获取到当前目录中所有的File对象
File[] files = pathFile.listFiles();
//3: 获取到每一个File对象
for (File file : files) {
//4: 判断这个File对象 是否是文件夹?
if (file.isDirectory()) {
//file--文件夹
//a: 递归操作, 回到步骤2
getFiles(file);
} else {
//file -- 文件
//a: 判断当前文件是否是.avi文件
if (file.getName().endsWith(".avi")) {
System.out.println(file.getAbsolutePath());
}
}
}
}
}
|
|