Puntos clave
- Desactiva la inferencia de tipos para conservar los identificadores como texto.
- Entrecomilla los campos con comas y duplica las comillas internas.
- Valida el JSON e inspecciona los registros antes de descargar.
Empieza con una muestra pequeña
Abre el conversor CSV a JSON y pega esta muestra. Selecciona la coma como delimitador. Desactiva Detectar Números y Booleanos si los números de cuenta o códigos postales deben conservarse como texto.
account_id,name,active
00123,"Rivera, Ana",true
00456,"Lee ""Sam""",falseLa coma dentro del nombre entrecomillado pertenece al mismo campo. Dos comillas dobles seguidas representan una comilla literal. Sin inferencia de tipos, las tres columnas se conservan como cadenas:
[
{"account_id":"00123","name":"Rivera, Ana","active":"true"},
{"account_id":"00456","name":"Lee \"Sam\"","active":"false"}
]Decide qué valores deben ser números
Activa la inferencia solo si la conversión automática es adecuada. Un identificador como 00123 puede convertirse en 123 y perder los ceros iniciales. Entrecomillar un campo CSV define su sintaxis, no un tipo de dato permanente. Si unas columnas requieren números y otras identificadores, conserva las cadenas durante la conversión y transforma explícitamente las columnas necesarias en tu aplicación.
Inspecciona antes de exportar
Revisa la tabla y el número de registros. Busca valores vacíos, columnas inesperadas y avisos de encabezados duplicados. La vista previa solo muestra parte de un conjunto grande; inspecciona también la exportación. Abre el formateador JSON para validar la sintaxis. JSON exige comillas en los nombres de propiedades y no permite comas finales ni comentarios. La validación sintáctica no comprueba las reglas de negocio.
Comprueba la aplicación de destino
Para volver a CSV, cambia al modo JSON a CSV con el mismo delimitador. Importa una muestra en la aplicación de destino y compara los identificadores y nombres. CSV no conserva un esquema: una hoja de cálculo puede interpretar IDs como números o celdas que empiezan por = como fórmulas. Ten cuidado con contenido no confiable. La conversión básica es local; la IA opcional envía el contenido seleccionado al exterior tras tu consentimiento.
Casos Extremos de RFC 4180 y Protección de Inyección de Fórmulas
Al transformar registros tabulares entre diferentes sistemas, los ingenieros deben prevenir dos anomalías críticas de datos:
- Campos Multilínea (RFC 4180): La especificación estándar de CSV permite saltos de línea dentro de campos entrecomillados. Los algoritmos de división simples corrompen direcciones o descripciones multilínea creando filas huérfanas. Los analizadores robustos deben mantener el estado del flujo para conservar estos saltos.
- Inyección de Fórmulas (Vulnerabilidades CSV / DDE): Al exportar archivos CSV para aplicaciones de escritorio (como Excel o Calc), las celdas que comienzan por
=,+,-o@pueden ejecutar fórmulas no deseadas. Limpie o agregue un apóstrofo antes de generar descargas desde el cliente. - Precisión de Números Enteros de 64 bits: Los identificadores de bases de datos a menudo superan el límite de precisión de JavaScript (
Number.MAX_SAFE_INTEGER, $2^53-1$). Desactivar la inferencia numérica automática garantiza que los identificadores largos conserven su valor íntegro sin redondeos.
