键盘录入一个文件夹路径,可以计算文件夹大小

package cn.zr.file;

import java.io.File;
import java.util.Scanner;

//从键盘录入一个文件夹路径,计算文件夹的大小
public class WenJianDaXiao {
    public static void main(String[] args) {
        File file = getfile();
        System.out.println("文件夹大小为"+getLength(file));
    }
    //判断文件夹还是文件
    public static File getfile(){
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个文件夹路径:");
        String line = sc.nextLine();
        File dir = new File(line);
        while(true){
            if (!dir.exists()) {
                System.out.println("请输入一个正确的文件夹路径");
            }else if(dir.isFile()){
                System.out.println("请输入一个文件夹路径:");
            }else{
                return dir;
            }
        }
    }
    //计算
    public static long getLength(File dir){
        long len = 0;
        File[] dirFile = dir.listFiles();
        for (File subFile : dirFile) {
            if (subFile.isFile()) {
                len = len + subFile.length();
            }else{
                len = len + getLength(subFile);
            }
        }
        return len;
    }
}

你可能感兴趣的:(java小程序)