java学习:递归以及listfiles() 方法实现文件夹的子孙级目录输出

应用:
递归以及File类的listfiles() 方法实现文件夹的子孙级目录输出。
代码如下所示:

/**
 * 输出子孙级目录|文件的名称 1、listfiles() 2、递归
 * 
 * @author Linlin Zhao
 * 
 */
public class demo05File {

	public static void main(String[] args) {
		String path = "D:/other";
		File parent = new File(path);
		printName(parent,0);
	}

	/**
	 * 输出路径
	 */

	public static void printName(File file,int root) {
		//判断文件是否存在
		if (file == null || !file.exists()) {
			return;
		}
		//控制文件层次
		for(int i=0;i<root;i++){
			System.out.print("-");
		}
		System.out.println(file.getName());

		if (file.isDirectory()) {
			for (File f : file.listFiles()) {
				printName(f,root+1);
			}
		}
	}
}

运行结果如下所示:
innew
-aaa
–33.txt
–ss.docx
-bbb
–666.txt
-q.txt

你可能感兴趣的:(JAVA学习:IO)