Heim > Java > javaLernprogramm > Wie berechnet man effizient die Größe einer Datei oder eines Ordners in Java?

Wie berechnet man effizient die Größe einer Datei oder eines Ordners in Java?

Susan Sarandon
Freigeben: 2024-10-29 10:18:02
Original
911 Leute haben es durchsucht

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

Ermitteln der Größe einer Datei oder eines Ordners in Java

Das Abrufen der Größe einer Datei oder eines Ordners ist eine häufige Aufgabe bei der Arbeit mit Dateien in Java. So können Sie es effektiv machen:

Dateigröße ermitteln

Um die Größe einer Datei zu ermitteln, können Sie die Methode length() auf einem java.io verwenden .File-Objekt. Dies gibt die Länge der Datei in Bytes oder 0 zurück, wenn die Datei nicht existiert.

<code class="java">java.io.File file = new java.io.File("myfile.txt");
file.length();</code>
Nach dem Login kopieren

Ordnergröße abrufen

Die Größe eines Ordners kann nicht ermittelt werden so einfach wie das Ermitteln der Größe einer Datei. In Java gibt es dafür keine integrierte Möglichkeit. Stattdessen müssen Sie den Verzeichnisbaum rekursiv durchgehen und dabei die Ordnergröße für jedes Unterverzeichnis und jede Datei akkumulieren:

<code class="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;
}</code>
Nach dem Login kopieren

Achtung: Bei der oben genannten Methode können Probleme auftreten, wenn Directory.listFiles() Gibt null zurück oder wenn symbolische Links vorhanden sind.

Alternative:

Für eine robustere Berechnung der Ordnergröße sollten Sie die Verwendung einer Drittanbieterbibliothek wie JWalk oder Apache Commons IO in Betracht ziehen . Diese Bibliotheken bieten zuverlässigere und umfassendere Lösungen zur Berechnung der Ordnergröße in Java.

Das obige ist der detaillierte Inhalt vonWie berechnet man effizient die Größe einer Datei oder eines Ordners in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage