输入一个目录,递归遍历该目录下所有目录和文件
@SuppressWarnings("all")
public static void main(String[] args) throws Exception{
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个文件目录");
String str=sc.next();
File file=new File(str);
//判断是否存在该目录
if (file.exists()) {
if (!file.isDirectory()){
System.out.println("输入的不是目录");
return;
}
}else {
System.out.println("该目录不存在");
return;
}
browse(file);
sc.close();
}
@SuppressWarnings({"all"})
static void browse(File file) throws Exception{
System.out.println(file.getName()+"中有以下文件和目录");
String[] s=file.list();
File f =null;
for (String str:s){
System.out.print(str+"\t");//遍历file下的文件和目录
}
System.out.println();
for (int i = 0; i < s.length; i++) {
f=new File(file.getAbsolutePath()+"\\"+s[i]);//D:\\111\\1.txt
if (f.isDirectory()) {//当该路径为目录时,递归遍历该文件下的文件和目录
System.out.println("-----------");
browse(f);
}
}
}