A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Cubase 中级黑马   /  2016-9-26 22:14  /  525 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

aaa是文件夹,里面有bbb.txt,ccc.txt,ddd.txt这些文件,有eee这样的文件夹,eee中有fff.txt和ggg.txt,打印出层级来
        aaa
                bbb.txt
                ccc.txt
                ddd.txt       
                eee
                        fff.txt
                        ggg.txt

2 个回复

倒序浏览
E:\FeiQ\day22\day22(File)\day22作业&预习\HomeWork4.bmp
回复 使用道具 举报
public static void main(String[] args) {                 File file = getDir();                 getDirLev(file,0);         }          public static void getDirLev(File file, int lev) {                 //获取所有文件夹和文件                 File[] subFiles = file.listFiles();                 for (File subFile : subFiles) {                         for (int i = 0; i <= lev; i++) {                                 System.out.print("\t");                         }                                 //无论是文件还是文件夹都打印出来                                 System.out.println(subFile);                                 //如果是文件夹的话递归调用                         if(subFile.isDirectory()){                                 getDirLev(subFile,lev++);                         }                 }         }          public static File getDir() {                 Scanner sc = new Scanner(System.in);                 System.out.println("请输入一个路径");                  while (true) {                         String line = sc.nextLine();                         // 将line封装成file对象                         File file = new File(line);                         if (!file.exists()) {                                 System.out.println("你输入的不是一个文件夹路径,请输入一个文件夹路径");                         }else if(file.isFile()){                                 System.out.println("你输入的是一个文件路径,请输入一个文件夹路径");                         }else{                                 return file;                         }                 }         }
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马