"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo obtengo la longitud del archivo en Go?

¿Cómo obtengo la longitud del archivo en Go?

Publicado el 2024-12-15
Navegar:697

How do I Get the File Length in Go?

Determinación de la longitud del archivo en Go

En Go, el tipo os.File proporciona un método sencillo para recuperar la longitud de un archivo manejado por el puntero Archivo.

Proceso de recuperación

Para determinar la longitud de un archivo, puede aprovechar la función Stat proporcionada por el sistema operativo paquete:

  1. Obtenga el valor os.FileInfo para el archivo que desea inspeccionar. Esto se puede lograr usando la función Stat en el objeto de archivo, así:
fi, err := f.Stat()
  1. Si la función Stat encuentra alguna problemas al recuperar los metadatos del archivo, el valor de error devuelto debe examinarse y manejarse en consecuencia.
  2. Una vez que tenga el valor os.FileInfo, utilice el método Tamaño para obtener la longitud del archivo en bytes:
fmt.Printf("The file is %d bytes long", fi.Size())

Código de ejemplo

Para ilustrar el proceso de recuperación , considere el siguiente fragmento de código:

package main

import (
    "fmt"
    "os"
)

func main() {
    f, err := os.Open("my_file.txt")
    if err != nil {
        fmt.Println("Could not open file:", err)
        return
    }

    fi, err := f.Stat()
    if err != nil {
        fmt.Println("Could not obtain file info:", err)
        return
    }

    fmt.Printf("The file is %d bytes long", fi.Size())
}

Al ejecutar este código, puede recuperar y mostrar la longitud del archivo especificado, "my_file.txt".

Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3