Próbowałem wymyślić, jak po prostu wyświetlić listę plików i folderów w jednym katalogu w Go.
Znalazłem filepath.Walk
, ale automatycznie przechodzi do podkatalogów, czego nie chcę. Wszystkie moje inne wyszukiwania nie poprawiły niczego.
Jestem pewien, że ta funkcjonalność istnieje, ale bardzo trudno ją znaleźć. Daj mi znać, jeśli ktoś wie, gdzie powinienem szukać. Dzięki.
Jeszcze prostsze, użyj
path/filepath
:źródło
Glob ignores file system errors such as I/O errors reading directories. The only possible returned error is ErrBadPattern, when pattern is malformed.
Możemy uzyskać listę plików w folderze w systemie plików, używając różnych standardowych funkcji biblioteki golang.
Wyniki testu.
Uzyskaj więcej informacji na temat tego posta na blogu
źródło
filepath.Walk
. Ponadtofilepath.Walk
obsługuje rekurencyjne przyzwoite podczasos.File.Readdir
iioutil.ReadDir
nie.ioutil.ReadDir
jest dobrym znaleziskiem, ale jeśli klikniesz i spojrzysz na źródło, zobaczysz, że wywołuje ono metodę Readdir pliku os.File . Jeśli nie masz nic przeciwko kolejności katalogów i nie potrzebujesz sortowania listy, to wystarczy ta metoda Readdir.źródło
Z twojego opisu prawdopodobnie potrzebujesz os.Readdirnames .
Skrawek:
Kredyt dla SquattingSlavInTracksuit „s komentarzem ; Gdybym mógł, zasugerowałbym promocję ich komentarza na odpowiedź.
źródło