Convertir CSV a JSON (y JSON a CSV)

Convertir CSV a JSON (y JSON a CSV): pega una tabla o un JSON, elige el sentido y copia o descarga el resultado. La herramienta detecta sola el separador (coma, punto y coma, tabulador o barra vertical), convierte los números en números reales e indica los errores con su línea. Tus datos no salen del navegador.

Fuente: § 2, IETF RFC 4180 – Common Format and MIME Type for Comma-Separated Values (CSV) Files. Actualizado: .

CSV: la primera fila son los nombres de columna. JSON: una lista de objetos o de listas.

Tu texto se queda en tu navegador: no se envía, no se guarda y no aparece en la dirección de la página.

CSV → JSON: los nombres de columna pasan a ser las claves. JSON → CSV: escribe una fila de encabezado con las claves.
42 pasa a ser el número 42; 007 sigue siendo texto (si no, se perderían los ceros iniciales).
Mi caja de herramientasTus datos se guardan solo en este navegador.

Resultado

Resultado
[ { "nombre": "Ana García", "ciudad": "Madrid", "edad": 34, "activo": true }, { "nombre": "Luis Pérez", "ciudad": "Sevilla", "edad": 28, "activo": false }, { "nombre": "Carla \"CC\" Ruiz", "ciudad": "Bilbao", "edad": "", "activo": true } ]
Tamaño
3 filas de datos, 4 columnas, 299 caracteres. Separador detectado: punto y coma.

Cómo se calcula

El CSV (valores separados por comas) es el formato de tabla más sencillo: una línea por registro y los campos separados por un delimitador. El JSON es el formato de datos de las API web. Esta herramienta convierte en ambos sentidos, todo dentro de tu navegador.

Cómo convertir CSV a JSON

  1. Pega el texto CSV (desde una hoja de cálculo: copia las celdas y pégalas; el separador será un tabulador).
  2. Deja el sentido «CSV → JSON». El separador se detecta; si hace falta, elígelo tú.
  3. Elige la estructura: lista de objetos (cada fila pasa a ser {"columna": valor}) o lista de listas.
  4. Copia el resultado o descárgalo como daten.json.

Tipos: ¿número o texto?

El CSV no tiene tipos: todo es texto. Con «Reconocer números y true/false» los valores se convierten en números JSON, pero solo si no se pierde nada: el número debe ser válido según la RFC 8259 § 6 (sin cero inicial, sin signo más, sin coma decimal) y caber en 15 cifras significativas. Los códigos postales como 08001, los teléfonos y los números de tarjeta siguen siendo texto. Un número con coma decimal como 1,5 también sigue siendo texto.

Convertir JSON a CSV

Una lista de objetos se convierte en tabla: las columnas son la unión de todas las claves en orden de aparición y los valores que faltan quedan vacíos. Los objetos y listas anidados se escriben como texto JSON en la celda, porque el CSV no tiene profundidad. Los campos con el separador, comillas o saltos de línea se entrecomillan como exige la RFC 4180.

Límites

Preguntas frecuentes

¿Cómo convierto un CSV a JSON?

Pega el CSV en el campo de entrada y elige «CSV → JSON». La primera fila da las claves y cada fila siguiente se convierte en un objeto. Copia o descarga el resultado.

¿Por qué mi CSV usa punto y coma en lugar de comas?

En configuración española las hojas de cálculo usan la coma como separador decimal y por eso escriben el punto y coma como separador de lista. La herramienta reconoce ambos; si dudas, elige el separador a mano.

¿Se conservan los ceros iniciales (código postal 08001)?

Sí. Los valores con cero inicial siguen siendo texto porque un número JSON no puede tenerlo (RFC 8259). Para dejarlo todo como texto, desactiva «Reconocer números y true/false».

¿Qué pasa con un JSON anidado al convertirlo a CSV?

El CSV es plano, así que los objetos y listas de un registro se escriben como texto JSON en la celda. Aplana antes la estructura si necesitas una tabla simple.

¿Cómo convierto CSV a JSON en Python?

Con la biblioteca estándar: csv.DictReader(archivo) lee las filas como diccionarios y json.dumps(list(reader), ensure_ascii=False, indent=2) las escribe como JSON. Para una conversión puntual esta página es más rápida.

¿Se suben mis datos a algún servidor?

No. La conversión ocurre en el navegador, sin peticiones al servidor. La entrada tampoco se guarda ni se añade a la dirección de la página.

Fuentes y base legal

Última actualización:

Herramientas relacionadas