package com.heima.test;
import java.io.File;
import java.util.Scanner;
public class Test1 {
public static void main(String[] args) {
File dir = getDir();
printJavaFile(dir);
}
public static File getDir() { //定义一个获取文件夹路径的方法
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个文件夹路径");
while(true) { //录入的不是文件夹路径就一直循环
String line = sc.nextLine();
File dir = new File(line); //封装成File对象
if(!dir.exists()) {
System.out.println("输入的路径不存在,请重新输入");
} else if(dir.isFile()) {
System.out.println("输入的是文件路径,请重新输入");
} else {
return dir; //是文件夹路径,将该路径返回
}
}
}
public static void printJavaFile(File dir) {
File[] subFiles = dir.listFiles(); //获取到该文件夹路径下的所有的文件和文件夹,存储在File数组中
for (File subFile : subFiles) { //遍历数组
if(subFile.isFile()&& subFile.getName().endsWith(".java")){
System.out.println(subFile); //文件后缀是.jaba的就打印
} else if(subFile.isDirectory()) {
printJavaFile(subFile); //是文件夹就递归调用
}
}
}
}
|
|