De JSON a CSV y de CSV a JSON

Pega JSON para obtener una tabla que puedes abrir en Excel o Google Sheets, o pega CSV para obtener JSON para un programa. Objetos anidados, listas, comillas y separadores se tratan por ti.

  • Gratis
  • Sin registro
  • Funciona en tu navegador
json-to-csv

100 % privado — tu texto se procesa en tu navegador y no se envía a ningún servidor.

Cómo funciona

Pega tus datos

JSON, idealmente una lista de objetos, o un CSV con fila de encabezado.

Elige el sentido

De JSON a CSV o de CSV a JSON, con el separador y las opciones que necesites.

Copia o descarga

Pégalo en una hoja de cálculo, un script, una importación a base de datos o una prueba de API.

Dos formatos, una conversión de todos los días

JSON es lo que intercambian programas y servicios web, y CSV es lo que importan hojas de cálculo y bases de datos. Los dos se encuentran constantemente: la respuesta de una API que alguien quiere abrir en Excel, una hoja de cálculo que debe alimentar una aplicación, una exportación que hay que cargar en una base de datos o un conjunto de datos de prueba. Este conversor va en ambos sentidos y se ocupa de los detalles que hacen penosa la conversión a mano.

De JSON a CSV

La mejor entrada es una lista de objetos, donde cada objeto pasa a ser una fila y cada clave una columna. La lista de columnas es la unión de todas las claves encontradas, en el orden en que aparecen por primera vez, de modo que registros con campos distintos caben en una sola tabla, y los valores que faltan se dejan vacíos. Los objetos anidados se aplanan con puntos, así que {"direccion": {"ciudad": "Madrid"}} pasa a ser una columna llamada direccion.ciudad. Las listas dentro de un registro se pueden unir en una celda, dejar como texto JSON o repartir en varias columnas, según lo que necesite el destino. Un solo objeto pasa a ser una tabla de una fila, y una lista de valores simples pasa a ser una columna.

De CSV a JSON

Con fila de encabezado, cada línea pasa a ser un objeto cuyas claves son los títulos de las columnas; sin ella obtienes una lista de listas. El separador se puede detectar, así que se leen archivos de hojas de cálculo configuradas con coma, punto y coma o tabulador. Los campos entrecomillados se tratan bien, con comas y saltos de línea dentro de las comillas y comillas dobles duplicadas. Opcionalmente, el texto que parece un número, true, false o null se convierte en el valor JSON correspondiente, en lugar de dejarlo todo como texto, y las celdas vacías pueden escribirse como cadena vacía o como null.

Cuidado con los detalles

Los números se tratan como texto siempre que es posible, de modo que un identificador largo no pierde cifras, y los valores con ceros a la izquierda, como códigos postales o teléfonos, no se convierten en números, lo que haría perder el cero. En la salida CSV, cualquier valor que contenga el separador, unas comillas o un salto de línea se entrecomilla correctamente, según la convención estándar.

Lo que no hace

CSV es plano y JSON no lo es, así que convertir un JSON con mucho anidamiento a CSV es un compromiso. No se intenta reconstruir el anidamiento original a partir de nombres de columna con puntos. Los archivos muy grandes se manejan mejor con un script o una herramienta de importación de base de datos, porque todo se procesa en la memoria de tu navegador. Para ver o limpiar antes un CSV, usa el visor de CSV.

Más herramientas para desarrolladores y texto

Preguntas frecuentes

¿Cómo convierto JSON a CSV?
Pega el JSON, deja seleccionado «De JSON a CSV» y copia el resultado, o descárgalo y ábrelo en una hoja de cálculo. Funciona mejor con una lista de objetos.
¿Qué pasa con los objetos anidados?
Se aplanan con puntos en los nombres de columna, por ejemplo direccion.ciudad. Las listas se pueden unir en una celda, dejar como JSON o repartir en columnas.
¿Cómo convierto CSV a JSON?
Elige «De CSV a JSON» y pega tu CSV. Con fila de encabezado obtienes una lista de objetos; sin ella, una lista de listas.
¿Se conservan bien los números y los códigos con ceros a la izquierda?
Valores como 00123 se conservan como texto para no perder los ceros, y los enteros largos conservan todas sus cifras. Solo los números limpios pasan a números JSON.
¿Trata comas y comillas dentro de los valores?
Sí. Los valores con el separador, comillas o saltos de línea se entrecomillan bien en el CSV, y los campos entrecomillados se leen bien al convertir desde CSV.
¿Se suben mis datos a algún sitio?
No. La conversión ocurre en tu navegador.