Datos · 4 min de lectura ·
JSON a CSV sin perder ni un campo
Claves anidadas, campos opcionales y comas dentro de los textos: así aplana 4Dev un JSON desordenado en un CSV listo para tu hoja de cálculo.

Las hojas de cálculo son planas; JSON no. Toda conversión de JSON a CSV tiene que decidir qué hacer con los objetos anidados, los arrays y las claves que solo tienen algunos registros. Esto es exactamente lo que hace el conversor de 4Dev.
Cada clave tiene su columna
La fila de encabezados se construye con las claves de todos los objetos, en el orden en que aparecen por primera vez, no solo con el primer registro. Un registro al que le falta una clave recibe una celda vacía, así las columnas nunca se desplazan y los campos opcionales nunca desaparecen.
[{"id":1,"name":"Ada"},
{"id":2,"name":"Alan","note":"optional"}]
id,name,note
1,Ada,
2,Alan,optional
Los objetos anidados se convierten en columnas con guion bajo
Los objetos se aplanan uniendo sus claves con un guion bajo, de modo que {"address":{"city":"Lisbon"}} se convierte en una columna llamada address_city. Un array de valores simples va en una sola celda ("admin, dev") y un array de objetos se guarda como texto JSON en su celda, así no se pierde nada.
Las comas y las comillas se escapan solas
Cualquier valor que contenga una coma, unas comillas dobles o un salto de línea se envuelve entre comillas dobles, y las comillas internas se duplican: la regla estándar de CSV que esperan Excel y Google Sheets.
2,"Alan, T.","says ""hi"""
Abrir el CSV en Excel
CSV no tiene ajustes propios, así que Excel adivina. Dos cosas suelen fallar. En los países que usan la coma como separador decimal, Excel espera punto y coma entre columnas y puede meter una fila entera en una sola celda. Y las tildes, el hebreo o los emojis pueden convertirse en símbolos raros si el archivo se abre con una codificación local en lugar de UTF-8. En ambos casos, usa Datos → Desde el texto/CSV en Excel, elige UTF-8 y el delimitador coma, y las columnas saldrán bien.
Ceros a la izquierda y números largos
Las hojas de cálculo tratan como número todo lo que parece un número. Un código postal como 01234 pierde el cero inicial, y un ID de 16 dígitos como 1234567890123456 se redondea y se muestra como 1,23457E+15. El CSV es correcto; el daño se produce cuando Excel lo abre. Importa esas columnas como texto y envía los ID largos como cadenas en el JSON ("id": "1234567890123456"), para que cualquier herramienta los conserve tal cual.
Arrays dentro de los registros
Los arrays son la parte más difícil de cualquier conversión, porque un registro puede tener muchos valores mientras que una fila CSV tiene una celda por columna. Repartirlos en varias filas repetiría todos los demás campos, y repartirlos en columnas numeradas (tags_1, tags_2…) crea una cabecera distinta para cada archivo. Guardar una lista de valores simples en una celda, y un array de objetos como texto JSON, hace que cada registro siga siendo exactamente una fila y que los datos originales puedan reconstruirse si hace falta.
Revisa el resultado antes de compartirlo
- El número de filas coincide con el número de registros del array JSON.
- La cabecera incluye todos los campos que esperas, también los opcionales.
- Los campos anidados aparecen como columnas con guion bajo, como address_city.
- Los valores con comas, comillas o saltos de línea se mantuvieron en una sola celda.
¿Necesitas una hoja de cálculo o la dirección contraria?
El conversor de JSON a CSV de 4Dev aplica siempre las mismas reglas de aplanado, y las herramientas JSON a Excel y CSV a JSON cubren los otros casos habituales. Para una comprobación rápida, pega primero unos pocos registros, revisa las columnas y luego convierte el archivo completo.