Uno de mis trabajos es subir datos de productos a la tienda de la compañía. Mi supervisor inicialmente extrae los datos de la base de datos de la compañía, y ella los coloca en una hoja de cálculo de Excel y los exporta como CSV. Luego convierto el archivo CSV al formato que el software de la tienda desea y lo subo. Generalmente uso una combinación de programas cortos de Java que he escrito y OpenOffice Calc para hacer los ajustes.
En algún lugar del proceso, los números de productos a veces se convierten en fechas. He notado que OO Calc a veces hace esto, e imagino que Excel tiene una característica molesta similar. He buscado en Google hasta que me sangran los dedos tratando de encontrar una manera de apagarlo en OO, y no puedo encontrar una solución. Incluso si lo hiciera, el uso de Excel por parte de mi supervisor podría ser el culpable. A menudo, estos problemas de conversión no se notan hasta que los productos ya figuran en la tienda electrónica, y no he tenido la oportunidad de rastrear el proceso y encontrar la fuente definitiva del problema.
¿Cuál es la mejor manera de manejar los datos CSV de tal manera que ninguno de los valores iniciales se cambie cuando se pasa a diferentes programas?
fuente
Intente encerrar los números entre comillas mientras lo procesa a través de su programa Java. OO / Excel será más probable que lo trate como texto y al menos no lo altere en algún formato de fecha incorrecta.
fuente
Bueno, la mejor manera sería (IMHO) dejar de usar Excel y OpenOffice y hacer todo en Java. La siguiente mejor opción sería dejar de usar openoffice y hacer eso en Java.
Pero si realmente desea seguir usando Excel y / o openoffice, puede solucionar su problema cambiando temporalmente los números de producto a algo que definitivamente no parece una fecha. Por ejemplo, puede rodear los números de producto con una cadena especial (que nunca aparece en el número de producto naturalmente) que luego elimina antes de realizar la exportación final a csv.
fuente
Me parece que la solución es asegurarse de que los campos de datos estén configurados para interpretar los datos correctamente. Seleccioné una columna, por ejemplo, configuré su "tipo" y luego agregué los datos. O cambie el formato DESPUÉS de que se importen los datos.
EDITAR: vuelvo a leer su pregunta. Creo que la respuesta a su pregunta es asegurarse de que la hoja de cálculo de datos en sí esté formateada correctamente primero.
Saludos,
fuente