Ir al contenido principal

Convertir JSON a CSV

El convertidor espera una matriz JSON de objetos y escribe una fila CSV por cada objeto. Los registros rara vez comparten exactamente las mismas claves, así que esta guía muestra cómo se eligen las columnas y qué rellena los huecos.

Ejemplo práctico

Entrada (JSON)
[
  {"id": 1, "name": "Smith, Jane", "tags": ["admin", "ops"]},
  {"id": 2, "name": "Kim", "email": "[email protected]"},
  {"id": 3, "name": "Lee", "email": null}
]
Salida (CSV)
id,name,tags,email
1,"Smith, Jane","admin,ops",
2,Kim,,[email protected]
3,Lee,,

La fila de encabezados enumera cada clave en el orden en que aparece por primera vez: id, name, tags y, después, email, que procede del segundo objeto. Smith no tiene email y el email de Lee es null, así que ambas celdas quedan vacías. La matriz tags se escribe como admin,ops y va entre comillas porque contiene el delimitador, igual que "Smith, Jane".

Cómo lo procesa el convertidor

  • La entrada debe ser una matriz JSON como [{...}, {...}]; un objeto suelto se rechaza.
  • Las columnas son la unión de todas las claves de los objetos, en el orden en que aparece cada clave por primera vez.
  • Una clave ausente o un valor null produce una celda vacía.
  • Los números y los booleanos se escriben como texto sin formato, por ejemplo 42 y true.
  • Las matrices de valores simples se escriben con sus elementos unidos por comas. Los objetos anidados, y las matrices que contienen objetos, se escriben como JSON compacto dentro de la celda, así que no se pierde ningún dato; aplánalos antes (por ejemplo, en address_city) si necesitas columnas separadas.
  • Los valores que contienen el delimitador, una comilla o un salto de línea se ponen entre comillas dobles, y las comillas internas se duplican.

Más guías de conversión