」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 如何在 Java 中有效地計算檔案或資料夾的大小?

如何在 Java 中有效地計算檔案或資料夾的大小?

發佈於2024-11-08
瀏覽:944

How do you efficiently calculate the size of a file or folder in Java?

在Java 中取得檔案或資料夾的大小

檢索檔案或資料夾的大小是處理檔案時的常見任務在爪哇。以下是如何有效地做到這一點:

取得檔案大小

要取得檔案的大小,您可以使用java.io 上的length() 方法.文件對象。這將傳回檔案的長度(以位元組為單位),如果檔案不存在,則傳回 0。

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

取得資料夾大小

取得資料夾的大小並不像取得檔案的大小那麼簡單。 Java 中沒有內建方法可以執行此操作。相反,您需要遞歸地遍歷目錄樹,累積每個子目錄和檔案的資料夾大小:

public static long folderSize(File directory) {
    long length = 0;
    for (File file : directory.listFiles()) {
        if (file.isFile())
            length  = file.length();
        else
            length  = folderSize(file);
    }
    return length;
}

警告:如果directory.listFiles()返回null或存在符號鏈接,上述方法可能會遇到問題。

替代:

要進行更穩健的資料夾大小計​​算,請考慮使用 JWalk 或 Apache Commons IO 等第三方函式庫。這些函式庫為計算 Java 中的資料夾大小提供了更可靠、更全面的解決方案。

最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3