Reemplazar cabeceras de un archivo CSV - Versión para impresión +- Comunidad Gambas-es (https://gambas-es.org) +-- Foro: Gambas (https://gambas-es.org/forum-3.html) +--- Foro: Aplicaciones/Fragmentos de Código (https://gambas-es.org/forum-8.html) +--- Tema: Reemplazar cabeceras de un archivo CSV (/thread-1580.html) |
Reemplazar cabeceras de un archivo CSV - alberto-moyano - 21-12-2023 Hola gente, estoy intentando insertar un archivo CSV a una de las tablas de mi base de datos, antes de poder hacer el insert en SQLite necesito normalizar algunas de las cabeceras del archivo CSV que obtengo por exportación desde otro programa, el código que escribí es el sigueinte Código: Public Sub menuBIBingresar_Click() No obtengo ningún error del ide, pero tampoco el resultado buscado, no me queda claro si me estoy equivocando al escribir el cambio (piso sobre el mismo archivo) o si directamente no estoy haciendo los reemplazos. ¿Donde me estoy equivocando? Gracias de antemano RE: Reemplazar cabeceras de un archivo CSV - cogier - 21-12-2023 Para cambiar las cabeceras en un archivo CSV lo haría así: - Código: Public Sub Form_Open() RE: Reemplazar cabeceras de un archivo CSV - alberto-moyano - 22-12-2023 Gracias Cogier, lo pruebo y comento. Funciona perfecto, hice unos cambios, el código quedo así Código: Public Sub btnImportar_Click() RE: Reemplazar cabeceras de un archivo CSV - tincho - 27-12-2023 Hola Alberto. Hago algunos comentarios a tu código. Partiendo de la base que los archivos CSV tienen el encabezado en la primera fila, no veo la utilidad de recorrer todas las filas para reemplazar los nombres de las columnas. Luego tampoco veo necesario alterar el archivo existente con File.Save.... También tenes que tener en cuenta para el insert si tenes un campo Serial (el id autoincremental por ejemplo) porque en ese caso la sentencia de insert cambia un poco. Para finalizar, también podes usar un insert sin el nombre de los campos, solo basta que acomodes los datos en el mismo orden en que están en la tabla Te propongo esta función que te devolvería una sentencia SQL con la que podrías insertar en la table, mediante: Código: [code] Saludos. RE: Reemplazar cabeceras de un archivo CSV - alberto-moyano - 29-12-2023 Hola Tincho, voy a trabajar sobre tu propuesta, pero algunas cuestiones --si te entendí bien-- no son los escenarios que planteas. 1. el archivo csv que obtengo por exportación desde JabRef, utiliza en la cabecera nombres diferentes a como estoy llamando a esas columnas en mi tabla, de ahí en renombrar las cabeceras. 2. el orden también es diferente y además vienen columnas que no utilizo y no vienen columnas que yo tengo en mi tabla. 3. si, tengo un id autoincremental. 4. el separador de campos es el punto y coma, ya que la coma es utilizada dentro del campo title en algunos títulos (por ejemplo: A las palabras se las lleva el viento, lo escrito queda). Saludos |