A lo largo de este artículo, aprenderemos a leer y escribir en un archivo CSV utilizando el lenguaje de programación GO.
Golang Codificación/CSV
Para manejar los archivos CSV en la programación GO, usaremos el paquete de codificación/CSV. Viene lleno de funciones para leer y escribir archivos CSV. Tenga en cuenta que una nueva línea representa un solo registro en un archivo CSV. Cada línea puede tener uno o más campos que no tienen en cuenta los personajes de espacios en blanco.
Para usar el paquete, podemos importarlo como:
Importar "Codificación/CSV"Ahora podemos continuar y aprender a trabajar con archivos CSV en Go.
Golang Leer CSV - Línea por línea
Para leer un archivo CSV utilizando el paquete de codificación/CSV, usamos el método Read (). Supongamos que tenemos un archivo llamado:
Información de usuario.CSVEl archivo contiene información sobre los usuarios como se muestra en la instantánea de muestra a continuación:
id, primer nombre, último nombre, correo electrónico, correo electrónico2, profesiónConsidere el siguiente código de ejemplo:
paquete principalDesglosemos el código anterior para comprender mejor cómo funciona.
Comenzamos importando los paquetes requeridos: codificación/CSV, FMT, IO, log y OS. El paquete FMT nos permite realizar operaciones de E/S. El paquete de registro se utiliza para registrar cualquier error que pueda ocurrir en el programa.
Por otro lado, el método del paquete IO se usa para especificar el IO.Interfaz del lector. Usamos el error EOF para determinar el final de un flujo de datos.
Finalmente, tenemos el paquete del sistema operativo. En nuestro ejemplo, usamos este paquete para leer el archivo CSV.
En la función principal, comenzamos abriendo el archivo CSV para leer usando el sistema operativo.Open () Método. Luego creamos un nuevo lector usando el CSV.Método newreader (). Este método toma un IO.Tipo de lector.
El siguiente paso implica usar un bucle para leer cada registro del archivo CSV. Luego, verificamos si se encuentra algún error. Si hay algún error, incluido un EOF, rompemos el bucle y registramos el error.
El último paso es iterar sobre cada registro del archivo CSV y devolver los valores.
El código anterior debe devolver una salida de muestra como se muestra a continuación:
identificaciónSi desea leer el CSV a la vez, use el método Readall () en lugar de Read ().
CSV con delimitador personalizado
A veces, puede encontrar un archivo CSV que no usa comas como delimitador. Aunque siguiendo el formato de un archivo CSV, los archivos con delimitadores personalizados pueden representar un desafío al analizar.
Sin embargo, podemos especificar la coma y el comentario en la programación de GO. Tome el siguiente ejemplo del archivo CSV:
id; firstName; LastName; correo electrónico; correo electrónico2; profesiónAunque el archivo sigue un formato similar a un archivo CSV, utiliza semicolones como delimitadores en lugar de una coma.
Para analizar el archivo anterior en GO, podemos ejecutar el código como se muestra a continuación:
paquete principalEl código anterior especifica un delimitador personalizado utilizando el lector.Coma.
Si desea eliminar los espacios principales, puede establecer el valor:
lector. TrimLeadingSpace = TrueGolang CSV Write
Para escribir un registro de CSV en el archivo, usamos la función de escritura. El registro es una porción de valores de cadena, con cada cadena que representa un solo campo.
NOTA: Dado que estos se amortiguan, debe llamar a Flush para asegurarse de que escriba el disco al escritor original.
Considere el ejemplo a continuación:
paquete principalEl código anterior crea los archivos CSV especificados y agrega los registros al archivo.
Si no desea llamar a Flush manualmente, puede usar el método WriteAll (). Llama al método de descarga automáticamente.
Conclusión
Esta guía explora cómo trabajar con archivos CSV utilizando el paquete GO Coding/CSV. Esperamos que hayas encontrado este artículo útil. Echa un vistazo a otros artículos de tinción de Linux para obtener más consejos.