/**
* 获取给定文件夹下所有文件到File类型数组
* 遍历数据一次获取每个文件
* 进行判断
* 如果是文件 直接打印
* 如果是文件夹 获取这个文件夹下的所有文件(递归)
*/
@Test
public void fileSearch(){
String pathDir = "F:\\";
getAllFilePath(pathDir);
}
/**
* 获取给定文件夹下所有文件路径
* @param pathDir
*/
public void getAllFilePath(String pathDir) {
//递归
recursionFile(pathDir);
}
/**
* 递归获取文件夹下所有文件
* @param parentPath
*/
public void recursionFile(String parentPath) {
//文件夹路径为文件对象
File dir = new File(parentPath);
//文件夹下所有的文件以及文件夹
File[] listFiles = dir.listFiles();
//遍历
for (File file : listFiles) {
//如果为文件
if(file.isFile()){
System.out.println(parentPath+file.getName());
}else{//为文件夹,调用递归
recursionFile(parentPath+"\\"+file.getName()+"\\");
}
}
}