Heim > Backend-Entwicklung > Golang > Wie kann ich den Inhalt eines Verzeichnisses in Go effizient auflisten?

Wie kann ich den Inhalt eines Verzeichnisses in Go effizient auflisten?

Patricia Arquette
Freigeben: 2024-12-21 02:40:10
Original
748 Leute haben es durchsucht

How Can I Efficiently List a Directory's Contents in Go?

Verzeichnisinhalte in Go effizient auflisten

Programmierer müssen häufig Dateien und Ordner in einem bestimmten Verzeichnis in Go auflisten. Allerdings kann die Navigation in der Paketumgebung eine Herausforderung sein. Dieser Artikel befasst sich mit dieser Anforderung und bietet eine Lösung.

Die Funktion „filepath.Walk“ ist zwar nützlich, aber möglicherweise nicht die beste Option zum Auflisten von Verzeichnisinhalten, ohne in Unterverzeichnisse einzutauchen. Die Lösung liegt im Betriebssystempaket und der ReadDir-Funktion.

Wie in der offiziellen Dokumentation beschrieben, liest ReadDir „das benannte Verzeichnis und gibt alle seine Verzeichniseinträge sortiert nach Dateinamen zurück.“ Das Ergebnis ist ein Slice von os.DirEntry-Typen.

Hier ist ein einfaches Beispiel, das die ReadDir-Funktion verwendet:

package main

import (
    "fmt"
    "os"
     "log"
)

func main() {
    entries, err := os.ReadDir("./")
    if err != nil {
        log.Fatal(err)
    }
 
    for _, e := range entries {
            fmt.Println(e.Name())
    }
}
Nach dem Login kopieren

Dieser Code durchläuft das aktuelle Verzeichnis und gibt die Namen aller Einträge aus. einschließlich Dateien und Ordner. Beachten Sie, dass Ordner nicht speziell gekennzeichnet sind. Um zwischen den beiden zu unterscheiden, können Sie die Methode IsDir() verwenden, die vom Typ os.DirEntry bereitgestellt wird.

Das obige ist der detaillierte Inhalt vonWie kann ich den Inhalt eines Verzeichnisses in Go effizient auflisten?. 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