šŸ„‡ Manejo de Archivos, Listar un directorio.

Para recorrer la estructura de un directorio, podemos utilizar la funciĆ³n ReadDir del paquete ioutil. Dicha funciĆ³n recibe el path incluyendo el directorio a recorrer, y retorna los nombres de archivos y directorios que este a su vez contenga. Cada uno de los valores retornados contiene:

Vamos a listar un directorio con el siguiente programa.

package main

import (
    "fmt"
    "io/ioutil"
    "log"
)

func main() {
    archivos, err := ioutil.ReadDir(".")
    if err != nil {
        log.Fatal(err)
    }
    for _, archivo := range archivos {
        fmt.Println("Nombre:", archivo.Name())
        fmt.Println("TamaƱo:", archivo.Size())
        fmt.Println("Modo:", archivo.Mode())
        fmt.Println("Ultima modificaciĆ³n:", archivo.ModTime())
        fmt.Println("Es directorio?:", archivo.IsDir())
        fmt.Println("-----------------------------------------")
    }
}

DescripciĆ³n del programa.

Si ejecutamos el programa obtendremos la salida con la informaciĆ³n de cada archivo.

$ go run main.go
Nombre: 001
TamaƱo: 102
Modo: drwxr-xr-x
Ultima modificaciĆ³n: 2019-06-13 01:51:54 -0400 EDT
Es directorio?: true
-----------------------------------------
Nombre: archivo1.txt
TamaƱo: 0
Modo: -rw-r--r--
Ultima modificaciĆ³n: 2019-06-13 01:41:53 -0400 EDT
Es directorio?: false
-----------------------------------------
Nombre: archivo2.txt
TamaƱo: 0
Modo: -rw-r--r--
Ultima modificaciĆ³n: 2019-06-13 01:41:58 -0400 EDT
Es directorio?: false
-----------------------------------------
Nombre: main.go
TamaƱo: 472
Modo: -rw-r--r--
Ultima modificaciĆ³n: 2019-06-13 01:50:40 -0400 EDT
Es directorio?: false
Manejo de Archivos, Escribir en un archivo. Manejo de Archivos, Copiar un archivo.
comments powered by Disqus