Hallo
Mit folgender Funktion möchte ich die Größe aller Dateien in den Verzeichnissen / Unterverzeichnisse berechnen.
Warum bekomme ich dabei haufenweise Fehler, das der Zugriff verweigert wird.
Zum Beispiel auf meine ganzen "Userverzeichnisse", wie Bilder,Videos usw...
Ich kann die ohne Fehler kopieren aber die Größe ermitteln nicht??
Spoiler anzeigen
Mit folgender Funktion möchte ich die Größe aller Dateien in den Verzeichnissen / Unterverzeichnisse berechnen.
Warum bekomme ich dabei haufenweise Fehler, das der Zugriff verweigert wird.
Zum Beispiel auf meine ganzen "Userverzeichnisse", wie Bilder,Videos usw...
Ich kann die ohne Fehler kopieren aber die Größe ermitteln nicht??
VB.NET-Quellcode
-
- Public Class SizeCalculator
- ' Methode zum Ermitteln der Größe aller Dateien in einem Verzeichnis und seinen Unterverzeichnissen
- Public Async Function GetTotalSizeAsync(ByVal path As String) As Task(Of Long)
- Return Await Task.Run(Function() GetTotalSize(path))
- End Function
- Private Function GetTotalSize(ByVal path As String) As Long
- Dim totalSize As Long = 0
- Try
- ' Überprüfen, ob der Pfad existiert
- If Directory.Exists(path) Then
- ' Dateien im aktuellen Verzeichnis durchlaufen
- For Each file As String In Directory.GetFiles(path)
- totalSize += New FileInfo(file).Length
- Next
- ' Unterverzeichnisse durchlaufen und rekursiv ihre Größen ermitteln
- For Each subDir As String In Directory.GetDirectories(path)
- totalSize += GetTotalSize(subDir)
- Next
- Else
- ' Wenn der Pfad nicht existiert, eine Meldung ausgeben oder entsprechend behandeln
- Debug.WriteLine($"Der Pfad {path} existiert nicht.")
- End If
- Catch ex As Exception
- ' Fehlerbehandlung, falls beim Durchlaufen der Verzeichnisse ein Fehler auftritt
- Debug.WriteLine($"Fehler beim Ermitteln der Größe des Verzeichnisses {path}: {ex.Message}")
- End Try
- Return totalSize
- End Function
- End Class
Asperger Autistin. Brauche immer etwas um gewisse Sachen zu verstehen.