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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© WOLFIE 中级黑马   /  2014-8-22 15:16  /  1047 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

格式如下:
路径
  文件夹A
     文件夹B
       文件夹C
         文件D
       文件C
     文件B1
     文件B2
  文件A1
  文件A2

我的代码:
public static void main(String[] args) {

                File dir =getDir();
                printLevelDir(dir,0);
        }

        public static void printLevelDir(File dir,int level) {
                File[] subFiles = dir.listFiles();
                for (File subFile : subFiles) {
                        for (int i = 0; i < level; i++) {
                                System.out.print("\t");
                        }
                        System.out.println(subFile.getName());
                        if (subFile.isDirectory()) {
                                printDir(subFile,++level);
                                level--;
                        }
                }
        }
//从键盘录入想要打印的文件夹名
public static File getDir() {
                Scanner sc = new Scanner(System.in);
                System.out.println("请输入文件夹路径:");
                while (true) {
                        String pathname = sc.nextLine();
                        File dir = new File(pathname);
                        if (!dir.exists()) {
                                System.out.println("您输入的路径不存在,请重新输入.");
                        } else if (dir.isFile()) {
                                System.out.println("您输入的是一个文件路径,请输入一个文件夹路径.");
                        } else {
                                return dir;
                        }
                }
        }

1 个回复

倒序浏览
多谢分享
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马