Conversor de CSV a JSON
Convierte CSV o TSV en JSON limpio desde tu navegador. La primera fila se convierte en las claves, el delimitador se detecta automáticamente y puedes mantener cada valor como texto o tipar números y booleanos: nada se sube a ningún servidor.
Delimitador
Salida
Valores
La primera fila se convierte en las claves de cada objeto.
Tu JSON aparecerá aquí.
Cómo usar Conversor de CSV a JSON
- 1
Pega tu CSV
Pega filas de datos CSV o TSV con un registro por línea. Mantén los nombres de las columnas en la primera fila para que puedan convertirse en las claves.
- 2
Elige el delimitador
Déjalo en Auto para detectar comas, puntos y coma o tabulaciones automáticamente, o elige el delimitador que usen tus datos.
- 3
Elige la forma de la salida
Usa Objetos para convertir cada fila en un objeto con claves según la cabecera, o Filas para mantener cada línea como un array simple. Cambia Valores a Tipado para leer números y booleanos como tipos reales de JSON.
- 4
Copia el JSON
Copia el JSON formateado y pégalo directamente en tu código, en una petición a una API o en un archivo de configuración.
Analizar CSV en JSON: cabeceras, tipos y las irregularidades
El CSV parece sencillo y no lo es
Un archivo separado por comas parece trivial —valores, comas, saltos de línea— pero esa sencillez es una trampa. CSV no tiene un estándar oficial impuesto universalmente; el RFC 4180 documenta las convenciones comunes, pero los exportadores discrepan en el entrecomillado, los finales de línea y los delimitadores. Los casos difíciles son justamente los que una división ingenua por comas resuelve mal: valores que contienen comas, valores que contienen el carácter de comilla y valores que abarcan varias líneas.
Un analizador de verdad maneja esos casos leyendo las reglas de entrecomillado en lugar de limitarse a dividir el texto. Un campo envuelto en comillas dobles puede contener legalmente comas y comillas escapadas (escritas como dos comillas dobles seguidas), y esta herramienta respeta exactamente eso: una celda que contiene "Portland, Oregon" sigue siendo un valor en lugar de convertirse en dos columnas, y una comilla duplicada dentro de un campo se colapsa en una sola comilla literal. El único caso que no reconstruye es un valor con un salto de línea dentro de las comillas, porque primero divide el archivo en registros línea por línea; así que mantén cada registro en su propia línea, o elimina los saltos de línea de dentro de las celdas, antes de convertir.
La forma de salida: un array de objetos
La forma JSON natural de una tabla es un array de objetos, un objeto por fila de datos. La primera fila del CSV se trata como la cabecera, y cada celda de cabecera pasa a ser una clave compartida por todos los objetos. Pega tres columnas llamadas name, role y city seguidas de dos filas de datos, y obtienes un array de dos objetos, cada uno con esas tres claves asociadas a los valores de esa fila. Esta es la forma que esperan la mayoría de las API y los scripts de importación.
Si tus datos no tienen fila de cabecera, esa correspondencia no tiene de dónde sacar las claves. Cambia al modo de salida por filas y cada línea pasa a ser un array de valores simple, conservando la cuadrícula en bruto sin inventar nombres. Elegir el modo de salida adecuado de antemano te libra de obtener objetos cuyas claves son la primera fila de datos por accidente.
Todo es una cadena hasta que digas lo contrario
Esta es la salvedad más importante con diferencia al leer CSV. El formato no lleva ninguna información de tipo en absoluto: cada celda es texto. Sin intervención, el número 42 pasa a ser la cadena 42, la palabra true pasa a ser la cadena true, y una celda vacía pasa a ser una cadena vacía. El código que espera un número o un booleano reales de esos campos se comportará mal en silencio.
Activa los valores tipados y el analizador promueve el texto numérico simple a números JSON, las palabras true y false a booleanos, y la palabra null a un null real. La inferencia de tipos es cómoda pero inherentemente heurística, así que vigila los extremos: los identificadores con ceros a la izquierda, los números de teléfono, los códigos postales y las cadenas con aspecto de versión son técnicamente de aspecto numérico, pero normalmente deberían seguir siendo texto. Cuando la exactitud importe para esos campos, mantén los valores como texto y conviértelos deliberadamente en tu propio código.
La detección del delimitador y TSV
No todos los archivos de valores separados usan comas. Las hojas de cálculo en muchas configuraciones regionales europeas exportan con punto y coma porque la coma es el separador decimal, y copiar un rango directamente de una hoja de cálculo suele dar valores separados por tabulaciones. El modo Auto inspecciona la primera línea de tu entrada y elige cuál de la coma, el punto y coma o la tabulación aparece más a menudo ahí, de modo que un archivo con comas, uno con punto y coma y un TSV se convierten todos sin que cambies ningún ajuste.
La detección automática es fiable para los datos limpios, pero puede dejarse engañar por un archivo cuya primera línea casualmente contiene más de un separador que el delimitador real. Si las columnas salen mal, anula la suposición y fija el delimitador de forma explícita: eso elimina la ambigüedad en un solo paso.
Codificación, BOM y otros gremlins invisibles
Los archivos exportados desde software de hojas de cálculo empiezan con frecuencia con una marca de orden de bytes, un carácter invisible al principio mismo del archivo. Si se deja en su sitio, se pega al primer nombre de cabecera, así que una clave que debería ser id pasa en silencio a ser una cadena ligeramente distinta y tus búsquedas por id fallan. Los finales de línea inconsistentes entre sistemas operativos y las líneas vacías al final son los otros sospechosos habituales que producen filas fantasma o columnas con un desfase de uno.
Esta herramienta recorta cada cabecera y cada celda, así que los gremlins habituales se ocupan en su mayoría de sí mismos: tolera tanto los finales de línea de Unix como los de Windows, y como una marca de orden de bytes inicial cuenta como espacio en blanco recortable, se elimina de la primera cabecera automáticamente en lugar de quedarse pegada a la clave. Por eso pegar aquí una exportación de hoja de cálculo en bruto normalmente simplemente funciona. Si una clave convertida sigue negándose a coincidir en el código, sospecha de un carácter perdido que el recorte no elimina —un espacio de ancho cero, por ejemplo— y vuelve a exportar el archivo como UTF-8 plano.
Filas irregulares y celdas vacías
Las hojas de cálculo reales son desordenadas: algunas filas tienen celdas vacías al final, a otras les faltan campos por completo, y una línea en blanco perdida se cuela al final. Cuando una fila tiene menos valores que cabeceras hay, los campos que faltan aparecen como cadenas vacías en lugar de hacer fallar la conversión, de modo que el array de salida se mantiene rectangular y cada objeto lleva el conjunto completo de claves.
Antes de fiarte del resultado, repásalo en busca de una fila reveladora donde los valores parezcan desplazados una columna: esa es la firma de un delimitador sin escapar dentro de un campo sin comillas más arriba. Arreglar el archivo de origen (poner el valor problemático entre comillas) es mucho más fiable que intentar parchear el JSON después.
Dónde se gana su sueldo la conversión de CSV a JSON
El uso más común es convertir una hoja de cálculo que alguien te entrega en datos que tu programa puede consumir: sembrar una base de datos, construir el cuerpo de una petición de API, generar un archivo de configuración o alimentar un fixture de pruebas. Quienes no son desarrolladores viven en hojas de cálculo, los desarrolladores viven en JSON, y esta conversión es el puente entre ambos sin escribir un analizador desechable cada vez.
Como todo el análisis se ejecuta en tu navegador, puedes convertir exportaciones sensibles —listas de clientes, métricas internas, filas financieras— sin subir nada a un servicio de terceros. Ten presente una regla para la seguridad posterior: decide conscientemente si cada columna debería tiparse o dejarse como texto, ya que la coerción de tipos silenciosa es la razón más común por la que los datos importados se comportan de forma distinta a lo que mostraba la hoja de cálculo.
Preguntas frecuentes
¿Cómo convierto CSV a JSON?
¿La primera fila tiene que ser una cabecera?
¿Puede leer tabulaciones o puntos y coma, no solo comas?
¿Cómo se tratan los números y los booleanos?
¿Se suben mis datos a algún sitio?
Herramientas relacionadas
Sigue trabajando con estas prácticas herramientas