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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 火影木叶 中级黑马   /  2016-6-26 00:12  /  408 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

public static void main(String[] args) {
                /*
                 * 1 创建键盘录入对象 2 .创建while死循环 3 读取键盘录入数据 4 对键盘录入数据进行判断 6 返回正确的file;
                 * 输入文件夹的大小 1 调出输入文件夹下所有的目录并组成数组 2 定义求和变量 3 遍历数组 4 判断是文件就读取长度,文件夹就递归执行
                 */
                File dir = gerDir();
                long l  =getLengh(dir);
                System.out.println(l);
        }
                public static  File gerDir(){
                Scanner sc = new Scanner(System.in);
                System.out.println("请输入一个文件夹路劲");
                while (true) {
                        String line = sc.nextLine();
                        File file = new File(line);
                        if (!file.exists()) {
                                System.out.println("您输入的文件夹不存在");
                        } else if (file.isFile()) {
                                System.out.println("您输入的是文件名,请重新输入");
                        }else{
                                return file;
                        }
                }

        }
                public static long getLengh(File dir){
                        long len = 0;
                        File[] arr = dir.listFiles();
                        for (File file : arr) {
                                if(file.isFile()){
                                        len = len+file.length();
                                }else{
                                        len = len +getLengh(file);
                                }
                        }
                       
                        return len;
                       
                }
       

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马