So erhalten Sie eine Liste von Dateien und Ordnern in einem Verzeichnis in Go: vollständige Anleitung
Hallo zusammen! Ich bin neu in Go und versuche, eine einfache Aufgabe zu lösen: Ich muss eine Liste aller Dateien und Unterordner in einem bestimmten Verzeichnis abrufen. Ich habe versucht, die Funktion `ioutil.ReadDir` zu verwenden, aber sie ist als veraltet markiert. Dann bin ich auf `os.ReadDir` gestoßen, aber ich habe nicht ganz verstanden, wie man damit arbeitet.
Hier ist, was ich versucht habe:
```go
package main
import (
"fmt"
"io/ioutil"
)
func main() {
files, err := ioutil.ReadDir(".")
if err != nil {
fmt.Println("Fehler:", err)
return
}
for _, f := range files {
fmt.Println(f.Name())
}
}
```
Der Code kompiliert, aber die IDE unterstreicht `ioutil.ReadDir` und sagt, dass es deprecated ist. Ich möchte einen modernen Ansatz verwenden. Außerdem benötige ich:
1. Nur Dateien (ohne Ordner) abrufen.
2. Nur Ordner abrufen.
3. Rekursiv alle Unterverzeichnisse durchlaufen.
4. Nach Erweiterung filtern (z.B. nur `.go`-Dateien).
Könnt ihr mir sagen, wie man das richtig in Go macht? Am besten mit Beispielen. Vielen Dank im Voraus!