폴더 삭제 및 폴더 크기 통계

1846 단어 폴더

// 
    public static void fileDelete(File file) throws Exception {
        if (!file.exists()) {
            log.debug(" !");
            return;
        }

        if (file.isFile()) {
            if (!file.delete())
                throw new Exception(" !");
            return;
        }
        if (file.isDirectory()) {
            File[] files = file.listFiles();
            if (files.length == 0) {
                if (!file.delete())
                    throw new Exception(" !");
                return;
            }
            for (int i = 0; i < files.length; i++) {
                File subFile = files[i];
                FileHandler.fileDelete(subFile);
            }
            if (!file.delete())
                throw new Exception(" !");
        }
        return;
    }
    // ,     , ,totalSize   
    public  static long fileSize(File file, long totalSize)  {

        if (!file.exists()) {
            log.info(" !");
            return totalSize;
        }

        if (file.isFile()) {
            //log.debug( file.getName() );
            totalSize += file.length() / 1024 / 1024;
            return totalSize;
        }

        if (file.isDirectory()) {
            File[] subFiles = file.listFiles();
            if (subFiles.length == 0)
                return totalSize;
            for (int i = 0; i < subFiles.length; i++) {
                totalSize = FileHandler.fileSize(subFiles[i], totalSize);
            }
        }
        return totalSize;

    }

좋은 웹페이지 즐겨찾기