📜  获取目录大小的Java程序

📅  最后修改于: 2022-05-13 01:55:23.750000             🧑  作者: Mango

获取目录大小的Java程序

Java中文件的大小可以使用 File 类获得。 'fileName.length()' 的内置函数用于以字节为单位查找文件大小。目录可能包含'N'个文件,用于计算目录大小需要所有文件的大小之和。

长度()方法:

文件类对象中的 length() 方法以(数据类型)格式返回文件大小。文件大小以字节为单位。

返回类型:

句法:

java.io.File file = new java.io.File("file_name.txt");
file.length();

在职的:

  1. 如果文件存在,则函数返回文件的大小
  2. 否则函数返回null。

但是,文件的大小可以使用单位转换以兆、千单位显示。

Java
// Java program to Get the size of a directory
 
import java.io.File;
 
class GFG {
    private static long getFolderSize(File folder)
    {
        long length = 0;
       
        // listFiles() is used to list the
        // contents of the given folder
        File[] files = folder.listFiles();
 
        int count = files.length;
 
        // loop for traversing the directory
        for (int i = 0; i < count; i++) {
            if (files[i].isFile()) {
                length += files[i].length();
            }
            else {
                length += getFolderSize(files[i]);
            }
        }
        return length;
    }
 
    // Driver Code
    public static void main(String[] args)
    {
        // Creating an instances of file class
        File file1 = new File("/home/mayur/Downloads");
 
        long size = getFolderSize(file1);
        // Size of folder in Bytes
        System.out.println("Size of " + file1 + " is "
                           + size + " B");
        // Size of folder in Kilobytes
        System.out.println("Size of " + file1 + " is "
                           + (double)size / 1024 + " KB");
        // Size of folder in Megabytes
        System.out.println("Size of " + file1 + " is "
                           + (double)size / (1024 * 1024)
                           + " MB");
    }
}


输出: