Golang Filepath

Golang Filepath
El paquete FilePath en GO le permite analizar y manipular las patas de archivo que es una manera que es adecuada para el sistema operativo de destino.

Una de esas aplicaciones es navegar por directorios en Windows y sistemas similares a unix. Por ejemplo, Windows implementa sus filepaths utilizando cortes hacia atrás como: dir \ dir \ archivo.extensión. Linux usando una barra de avance (/). Por lo tanto, tener una forma de crear una ruta que sea compatible con ambos sistemas es muy útil.

Esta guía descubrirá cómo usar el paquete FilePath para manipular varios aspectos de las rutas de archivo.

Ruta de archivo.Abdominales()

El método ABS () del paquete FilePath le permite obtener la ruta absoluta de una ruta especificada. Si la ruta especificada no es absoluta, la función se unirá con el directorio de trabajo actual para crear una ruta absoluta.

La sintaxis de la función es como se muestra:

FUNC ABS (String Path) (String, Error)

La función toma la ruta como un parámetro y devuelve su ruta absoluta o un error.

paquete principal
importar (
"FMT"
"ruta/filepath"
)
funcmain ()
fmt.Println (filepath.Abdominales("/"))
fmt.Println (filepath.Abdominales("."))
fmt.Println (filepath.ABS ("/Windows")) // no absoluto

Si ejecutamos el código anterior en una máquina de Windows, deberíamos obtener una salida como:

C:\
C: \ users \ csalem \ documents \ workspace \ filepath
C: \ Windows

En Linux, el código devuelve:

/
/Home/Debian11
/Windows

Ruta de archivo.Base()

Esta función devuelve el último elemento de la ruta proporcionada. La función elimina todos los separadores de ruta antes de eliminar el último elemento. Si la ruta proporcionada está vacía, la función regresa ".".

Un programa de ejemplo es como se muestra:

fmt.Println (filepath.Base ("/var/log/alternativas.registro"))

El código anterior debe devolver el último elemento de la ruta como:

alternativas.registro

Si proporciona una sola entrada a la función, se devuelve como:

fmt.Println (filepath.Base ("Alternativas.registro"))

Producción:

alternativas.registro

Ruta de archivo.Dir ()

El método Dir () devuelve todo menos la última parte de la ruta. Piense en ello como lo opuesto al método base ().

La sintaxis de la función es como:

FUNC Dir (cadena de ruta) cadena

Un ejemplo es como se muestra:

fmt.Println (filepath.Dir ("/var/log/alternativas.registro"))

El valor resultante es como:

/var/log

Ruta de archivo.Unirse()

Este es uno de los métodos más útiles proporcionados por el paquete FilePath. Se utiliza para construir una ruta absoluta basada en los parámetros proporcionados.

La sintaxis de la función es como:

FUNC Join (Elem ... cadena) cadena

La función toma cualquier número de elementos y devuelve un valor absoluto construido de acuerdo con el sistema operativo de destino.

Por ejemplo:

fmt.Println (filepath.Únete ("Dir1", "Dir2", "Dir3", "nombre de archivo.TXT"))

Si ejecutamos el código anterior en Windows, debemos tomar una ruta como:

dir1 \ dir2 \ dir3 \ nombre de archivo.TXT

En Linux, la salida es como:

dir1/dir2/dir3/nombre de archivo.TXT

Ruta de archivo.Isabs ()

Puede usar esta función para verificar si la ruta proporcionada es absoluta. Devuelve verdadero si la ruta es absoluta y falsa si.

Un ejemplo es como se muestra:

fmt.Println (filepath.Isabs ("/Home/Debian"))
fmt.Println (filepath.Isabs ("./"))
La función devuelve:
verdadero
FALSO

Ruta de archivo.Ext ()

El método ext () devuelve la extensión del archivo desde el nombre de archivo proporcionado. Un ejemplo es como se muestra:

fmt.Println (filepath.Ext ("/Home/Ubuntu/Tar.gz "))

El ejemplo anterior debe devolver la extensión del archivo como:

.GZ

Este es un método maravilloso para verificar el tipo de archivo.

Ruta de archivo.Nombre de volumen

El método VolumeName () le permite obtener el nombre principal del volumen desde una ruta especificada.

Ejemplo:

fmt.Println (filepath.VolumeName ("C: \\ Windows \\ System32"))

La función debe devolver el nombre del volumen como:

C:

Conclusión

Usando el tutorial, descubre los conceptos básicos de trabajar con FilePaths utilizando el paquete FilePath. Consulte la documentación para explorar más.

Codificación feliz!