java输入输出21:File类递归

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yuming226/article/details/84479673

打印某目录下的sh文件及其子目录下的sh文件,代码如下:

package zifu;

import java.io.File;
import java.util.Scanner;

public class Demo10_Digui {
	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);
			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();
		for (File subFile : subFiles) {
			if (subFile.isFile() && subFile.getName().endsWith(".sh")) {
				System.out.println(subFile);
			} else if (subFile.isDirectory()) {
				printJavaFile(subFile);
			}
		} 
	}
}

猜你喜欢

转载自blog.csdn.net/yuming226/article/details/84479673