mygems

Convertir JSON a CSV

Un árbol, aplanado en una tabla que puedes abrir en cualquier parte.

  • Objetos anidados aplanados
  • Arreglos conservados o pasados a filas
  • Encuentra el arreglo de registros
  • No se sube nada

1.Abre el JSON

JSON o JSON Lines. Arrástralo aquí o elige un archivo.

O pega el JSON

Por qué existe

JSON es un árbol y CSV es un rectángulo, así que todo conversor toma decisiones sobre el anidamiento, y la mayoría las toma en silencio. Esta herramienta las toma a la vista: los objetos anidados se vuelven columnas con puntos, como address.city; los arreglos quedan enteros en una celda salvo que elijas uno para repartirlo en filas; y los registros se encuentran aunque estén dentro de la respuesta de una API y no al principio del archivo.

Qué hace

  • Lee un arreglo JSON, un solo objeto o JSON Lines con un registro por línea.
  • Encuentra los arreglos dentro de una respuesta de API, como `data` o `results`, y te deja elegir cuál contiene los registros.
  • Aplana los objetos anidados en nombres de columna con puntos, en el orden en que aparecen los campos por primera vez.
  • Mantiene los arreglos como texto JSON en una celda, o da a cada elemento de un arreglo su propia fila, repitiendo los campos del registro padre.
  • Acepta un archivo o JSON pegado, y muestra una vista previa de la tabla antes de descargar.

Registros que no tienen todos los mismos campos

El JSON real casi nunca los tiene. Todo campo que aparece en algún registro se convierte en columna, y un registro que no lo tiene queda con una celda vacía ahí. No se descarta nada porque el primer registro no lo tuviera.

Preguntas

¿Cómo se manejan los objetos anidados?
Cada campo anidado se convierte en su propia columna, con el nombre de su ruta: `{"address": {"city": "Lyon"}}` se convierte en una columna llamada `address.city`. Sin importar la profundidad del anidamiento, termina en un solo nivel de columnas.
¿Qué pasa con los arreglos?
Por defecto un arreglo queda en una sola celda como texto JSON, de modo que el número de filas sigue coincidiendo con el de registros. Elige un arreglo para dividirlo y cada uno de sus elementos tendrá su propia fila, con el resto del registro repetido al lado.
Mi JSON es un objeto, no un arreglo. ¿Funcionará?
Sí. Si los registros están dentro de una clave como `data` o `items`, la herramienta lista todos los arreglos que encuentra y empieza por el más grande. Un solo objeto sin arreglos se convierte en una tabla de una fila.