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

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

Barbara Streisand
Barbara StreisandOriginal
2024-10-30 20:52:02134Durchsuche

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

Berechnen Sie die Größe eines Ordners oder einer Datei in Java

Die Notwendigkeit, die Größe einer Datei oder eines Ordners zu bestimmen, ist eine häufige Aufgabe in verschiedenen Softwareanwendungen. In Java gibt es einfache Methoden, um dies zu erreichen.

Abruf der Dateigröße

Die Bestimmung der Größe einer Datei erfolgt mit java.io.File. Der folgende Code demonstriert seine Verwendung:

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

Die Methode length() gibt die Größe der Datei in Bytes zurück. Wenn die angegebene Datei nicht existiert, wird 0 zurückgegeben.

Berechnung der Ordnergröße

Anders als Dateien haben Ordner in Java keine inhärente Größeneigenschaft. Um die Größe eines Ordners zu ermitteln, müssen Sie dessen Verzeichnisbaum rekursiv durchlaufen. Der folgende Code veranschaulicht diesen Ansatz:

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

Diese Methode akkumuliert die Größen aller Dateien und Unterverzeichnisse innerhalb des angegebenen Ordners.

Achtung: Beachten Sie, dass diese Methode davon ausgeht eine einfache Verzeichnisstruktur. Symlinks oder potenzielle Fehlermodi werden nicht berücksichtigt. Erwägen Sie für produktionstaugliche Anwendungen die Verwendung robusterer Methoden.

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

Stellungnahme:
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