He estado tratando de descubrir cómo simplemente enumerar los archivos y carpetas en un solo directorio en Go.
Lo he encontrado filepath.Walk
, pero entra en subdirectorios automáticamente, lo que no quiero. Todas mis otras búsquedas no han mejorado nada.
Estoy seguro de que esta funcionalidad existe, pero ha sido realmente difícil de encontrar. Avísame si alguien sabe dónde debo mirar. Gracias.
Aún más simple, use
path/filepath
:fuente
Glob ignores file system errors such as I/O errors reading directories. The only possible returned error is ErrBadPattern, when pattern is malformed.
Podemos obtener una lista de archivos dentro de una carpeta en el sistema de archivos usando varias funciones de biblioteca estándar de golang.
Resultados de referencia.
Obtenga más detalles sobre esta publicación de blog
fuente
filepath.Walk
. Además,filepath.Walk
admite recursivos decentes mientras queos.File.Readdir
yioutil.ReadDir
no.ioutil.ReadDir
es un buen hallazgo, pero si hace clic y mira la fuente verá que llama al método Readdir de os.File . Si está de acuerdo con el orden del directorio y no necesita ordenar la lista, entonces este método Readdir es todo lo que necesita.fuente
De tu descripción, lo que probablemente quieras es os.Readdirnames .
Retazo:
Crédito para SquattingSlavInTracksuit 's comentario ; Hubiera sugerido promocionar su comentario a una respuesta si pudiera.
fuente