黑马程序员技术交流社区
标题:
递归打印文件夹层级的佳哥做法及原创做法
[打印本页]
作者:
sufutian
时间:
2015-12-20 11:13
标题:
递归打印文件夹层级的佳哥做法及原创做法
//先来看看佳哥的做法,不得不说佳哥这递归控制变量增加制表符一般人是想不到的
public static void printDir(File dir,int n){
File[] subFile=dir.listFiles();
for (File file : subFile) {//---必须遍历操作.
for (int i = 0; i <=n; i++) {//--打印制表符
System.out.print("\t");
}
System.out.println(file.getName());
if(file.isDirectory()){
printDir(file,n+1);//n+1 不是n++
}
}
}
//哈哈接下来是我的做法 虽然是用递归 但我的层级是用字符串操作做的.
public static void allPath(File file) throws IOException{
File[] fi=file.listFiles();
for (File file2 : fi) {
{//截取(绝对路径长度-文件/文件夹名长度)替换为空格 +文件/文件夹名-------看着长 思路简单
System.out.println(file2.getAbsolutePath().substring(0,file2.getAbsolutePath().length()-file2.getName().length()).replaceAll(".", " ")+file2.getName());
if(file2.isDirectory())
allPath(file2);
}
}
}
//--------------大家可以交流一下各种奇葩的做法
//----------------走过路过不要错过 多多捧场!
作者:
sufutian
时间:
2015-12-20 11:16
{ //截取(绝对路径长度-文件/文件夹名长度)替换为空格 +文件/文件夹名-------看着长 思路简单
我去 括号不小心剪切走了 是在if后的
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2