Por qué convertir CSV a JSON
CSV es un formato de datos tabulares, el formato predeterminado de exportación de Excel. JSON es un formato amigable para programas, el estándar de transmisión de API. Convertir CSV a JSON permite que los datos tabulares sean consumidos directamente por programas.
Escenarios comunes:
- Importar datos de Excel a la base de datos de un sitio web
- Conectar datos tabulares con una API
- Pasar resultados de análisis de datos al frontend para renderizar
- Migrar configuraciones de una hoja a archivos JSON
Diferencia entre CSV y JSON
Formato CSV
name,age,city
Tom,25,Pekín
Jerry,30,Shanghái
- Texto sin formato, separado por comas
- La primera fila es la cabecera
- Cada fila es un registro
- Sin tipos (todo son cadenas)
- Sin estructura anidada
Formato JSON
[
{"name": "Tom", "age": 25, "city": "Pekín"},
{"name": "Jerry", "age": 30, "city": "Shanghái"}
]
- Estructurado, pares clave-valor
- Con tipos (cadena, número, booleano)
- Soporta anidamiento
- Parseable directamente por programas
Principio de conversión
Asignación de cabeceras
La primera fila del CSV es la cabecera; al convertir a JSON, la cabecera se convierte en las claves del objeto:
- Cabecera: name, age, city
- Primera fila de datos: Tom, 25, Pekín
- Conversión: {"name": "Tom", "age": "25", "city": "Pekín"}
Reconocimiento de tipos de datos
Todos los valores del CSV son cadenas. Al convertir a JSON se pueden reconocer tipos de forma inteligente:
- Número: "25" → 25 (número)
- Booleano: "true" → true (booleano)
- Nulo: "" → null (nulo)
- Cadena: se mantiene como cadena
Si no se reconocen los tipos, todo se trata como cadena.
Generación de arrays
Cada fila del CSV es un objeto; todas las filas forman un array:
[
{objeto1},
{objeto2}
]
Estructura anidada
El problema
CSV es una tabla plana; JSON soporta anidamiento. ¿Cómo convertir un CSV plano a un JSON anidado?
Método 1: claves con notación de puntos
La cabecera del CSV usa puntos para indicar la jerarquía:
name,address.city,address.zip
Tom,Pekín,100000
A JSON:
{
"name": "Tom",
"address": {
"city": "Pekín",
"zip": "100000"
}
}
Método 2: índice de array
name,tags[0],tags[1]
Tom,A,B
A JSON:
{
"name": "Tom",
"tags": ["A", "B"]
}
Método 3: separador con punto y coma
name,tags
Tom,"A;B;C"
A JSON:
{
"name": "Tom",
"tags": ["A", "B", "C"]
}
Pasos de conversión
1. Preparar el CSV
Asegúrate de que el formato CSV sea correcto:
- La primera fila es la cabecera
- Los campos se separan con comas
- Los campos con comas se envuelven entre comillas dobles
- Los campos con comillas dobles se escapan con dos comillas dobles
2. Subir o pegar
Pega el contenido CSV en la herramienta de conversión o sube el archivo CSV.
3. Configurar opciones
- Si reconocer tipos de datos
- Cómo manejar estructuras anidadas
- Formato de salida (array o objeto por fila)
4. Convertir
La herramienta convierte automáticamente y genera el JSON.
5. Validar
Comprueba que el resultado JSON cumpla lo esperado:
- ¿Los campos son correctos?
- ¿Los tipos son correctos?
- ¿El anidamiento es correcto?
Problemas comunes
Campos con comas
Los campos CSV que contienen comas deben envolverse entre comillas dobles:
name,desc
Tom,"Hello, world"
Si no se envuelven, se interpretan como dos campos y la conversión falla.
Caracteres chinos corruptos
Usa codificación UTF-8 para el CSV. Excel puede usar GBK por defecto; al exportar, elige UTF-8.
Manejo de valores nulos
¿Una celda vacía del CSV se convierte en cadena vacía "" o en null?
- Predeterminado: cadena vacía ""
- Reconocimiento inteligente: null
- Depende de las opciones de la herramienta
Precisión numérica
Los números grandes pueden perder precisión al convertir a JSON. Por ejemplo, un número de identidad de 18 dígitos se convierte en notación científica al pasar a número. Trata los números de identidad como cadenas (añade un apóstrofo inicial en el CSV o especifica el tipo cadena en la conversión).
Formato de fecha
Los formatos de fecha del CSV no son uniformes (2024-01-01, 2024/1/1, Jan 1 2024). Al convertir a JSON, mantenlos como cadena y resuelve el análisis en el frontend.
Cabecera BOM
El CSV exportado por Excel puede traer una cabecera BOM (\uFEFF), que provoca un carácter invisible antes del primer nombre de campo. La herramienta de conversión debe eliminar automáticamente el BOM.
Consejos de conversión
Preprocesar el CSV
Antes de convertir, organiza en Excel:
- Elimina filas vacías
- Unifica el formato de fecha
- Comprueba la integridad de los campos
Conversión selectiva
Convierte solo las columnas necesarias. Elimina del CSV las columnas innecesarias para reducir el tamaño del JSON.
Conversión por lotes
Convertir un CSV muy grande de una sola vez puede ralentizar. Conviértelo en lotes de unos cientos de filas.
Validación del resultado
Tras la conversión, embellece el JSON con una herramienta de formato y revisa manualmente algunos registros para confirmar.
Convertir con DocsAll
- Sube el archivo CSV o pega el contenido CSV
- La herramienta analiza automáticamente cabeceras y datos
- Configura las opciones de conversión (reconocimiento de tipos, etc.)
- Genera el JSON
- Copia o descarga el resultado
La conversión se realiza en el navegador; los datos CSV no se suben al servidor, ideal para datos sensibles.
Conversión inversa: JSON a CSV
A veces se necesita el proceso inverso, convertir JSON a CSV:
- Una API devuelve JSON y se quiere exportar a Excel para analizar
- Exportar campos JSON de la base de datos a una tabla
Dificultades de JSON a CSV:
- Hay que aplanar la estructura anidada
- Manejo de campos array (concatenar o expandir en varias filas)
- Rellenar valores vacíos cuando los campos no son uniformes
Resumen
La conversión de CSV a JSON tiene como núcleo: asignar cabeceras a nombres de clave, reconocer tipos de datos y manejar estructuras anidadas. Presta atención a campos con comas, codificación de caracteres chinos, valores nulos y precisión de números grandes. La herramienta CSV a JSON de DocsAll se ejecuta en el navegador y los datos no se transmiten al exterior.