Java Folder Size Get folderSize(File directory)

Here you can find the source of folderSize(File directory)

Description

Recursively traverses a folder and its subfolders to calculate the total size in bytes.

License

Apache License

Parameter

Parameter Description
directory a parameter

Return

folder size in bytes

Declaration

public static long folderSize(File directory) 

Method Source Code

//package com.java2s;
/*/* w w w.  ja va 2  s . c  o  m*/
 * Copyright 2011 gitblit.com.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

import java.io.File;

public class Main {
    /**
     * Recursively traverses a folder and its subfolders to calculate the total
     * size in bytes.
     *
     * @param directory
     * @return folder size in bytes
     */
    public static long folderSize(File directory) {
        if (directory == null || !directory.exists()) {
            return -1;
        }
        if (directory.isDirectory()) {
            long length = 0;
            for (File file : directory.listFiles()) {
                length += folderSize(file);
            }
            return length;
        } else if (directory.isFile()) {
            return directory.length();
        }
        return 0;
    }
}

Related

  1. emSize(Font font, double em)
  2. folderSize(File directory)
  3. folderSize(File directory)
  4. fontSize(Font f)
  5. fontSize(Font f)
  6. setFileChooserFont(Component[] comp, int newFontSize)
  7. setFontOfPixelHeight(Graphics2D g, int style, double targetSize)