递归打印File文件夹目录信息–代码:
package com.bhy.test_file;
import java.io.File;
/**
* 输出文件夹及其文件结构目录信息
* @author bhy
*
*/
public class TestListFile {
public static void main(String[] args) {
File f = new File("F:/java文件");
System.out.println(">"+f.getName());
getFileName(f,1);
}
/**
* 递归输出文件信息
* @param f--File对象
* @param n--文件层次记录数
*/
public static void getFileName(File f,int n) {
int m = n;
File[] file = f.listFiles(); //获取当前目录的子目录对象的数组
for (File file2 : file) { //遍历当前File数组(父目录的)
for (int i = 0; i <= n; i++) { //打印当前层次的对应 '>' 表示
System.out.print(">");
}
System.out.println(file2.getName());
if(file2.isDirectory()) { //如果file2是一个文件夹则递归遍历子目录,否则结束当前目录遍历。
getFileName(file2,m+1);
}
}
}
}