Rumah  >  Artikel  >  Java  >  Cara Mendapatkan Saiz Fail dan Folder dalam Java: Panduan Langkah demi Langkah

Cara Mendapatkan Saiz Fail dan Folder dalam Java: Panduan Langkah demi Langkah

DDD
DDDasal
2024-10-27 09:47:30241semak imbas

How to Get File and Folder Sizes in Java: A Step-by-Step Guide

Mengakses Saiz Fail dan Folder dalam Java

Menentukan saiz fail dan folder ialah tugas biasa dalam pengaturcaraan. Di Java, melaksanakan tugas ini melibatkan pendekatan yang berbeza bergantung pada sama ada sasaran ialah fail atau folder.

Untuk fail, prosesnya adalah mudah. Menggunakan kelas 'java.io.File', anda boleh mencipta contoh yang mewakili fail yang diminati. Kaedah 'length()' bagi contoh ini akan mengembalikan saiz fail dalam bait. Jika fail tidak wujud, nilai 0 akan dikembalikan.

Mendapatkan semula saiz folder adalah lebih kompleks kerana tiada kaedah terbina dalam untuk mencapai ini secara langsung. Sebaliknya, anda mesti menggunakan pendekatan rekursif. Buat kaedah, seperti 'folderSize(),' yang menerima direktori sebagai input. Dalam kaedah ini, lelaran melalui kandungan direktori menggunakan kaedah 'listFiles()'. Untuk setiap item, jika ia adalah fail, tambahkan saiznya pada pembolehubah penumpuk. Jika ia adalah subdirektori, panggil secara rekursif 'folderSize()' dengan subdirektori itu sebagai hujah. Nilai terkumpul mewakili saiz folder.

Di bawah ialah contoh pelaksanaan kaedah 'folderSize()':

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;
}

Awas: Pelaksanaan ini tidak tidak mengambil kira kemungkinan ralat seperti kandungan direktori nol atau pautan simbolik. Untuk memastikan keteguhan dalam aplikasi pengeluaran, pelaksanaan yang lebih mantap harus dipertimbangkan.

Atas ialah kandungan terperinci Cara Mendapatkan Saiz Fail dan Folder dalam Java: Panduan Langkah demi Langkah. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn