JSON anidado a CSV: elige las filas y columnas
Dos registros, cinco columnas y los detalles que un CSV no puede conservar.
Una exportación JSON puede contener una lista dentro de otra lista, mientras que CSV necesita filas y columnas. Antes de convertir, elige qué lista se convertirá en la tabla y qué hacer con los valores dentro de cada registro.
Este JSON de ejemplo contiene dos creadores bajo data.items. Cada uno tiene un objeto creator anidado, un array tags y un campo note. Una nota es null; la otra es una cadena vacía.
Elige los registros antes de seleccionar columnas
Abre el convertidor de CSV, JSON y YAML, importa el ejemplo y elige JSON en De, luego CSV en A. Abre Opciones y establece Ruta de datos (opcional) a /data/items.
Sin esa ruta, el objeto externo se convierte en una fila. Con ella, los dos elementos se convierten en dos filas. La ruta selecciona datos; no renombra campos ni busca valores coincidentes.
Las rutas usan nombres separados por barras, siguiendo la notación JSON Pointer. Introduce /data/items, no data.items. Si un nombre de campo contiene una barra, escribe ~1 para esa barra; usa ~0 para una tilde literal.
Decide si los objetos anidados van en una sola celda
Con Aplanar objetos anidados desactivado, las columnas son id, creator, tags y note. El objeto creador ocupa una celda CSV como texto JSON. Eso es CSV válido, pero incómodo si quieres ordenar por país.
Activa el aplanado y las columnas se convierten en:
/id
/creator/name
/creator/region
/tags
/note
Ahora Zoë y AU tienen sus propias celdas. Los encabezados con prefijo de barra describen de dónde proviene cada valor. También evitan confundir un campo literal llamado creator.name con un campo anidado llamado name.
Compara el CSV con celdas anidadas con el CSV aplanado. Ambos tienen dos filas de datos. Las comillas dobles alrededor del JSON dentro de una celda CSV son escape, no datos duplicados.
Los arrays no se convierten en filas adicionales
El aplanado expande objetos anidados. No divide un array en filas ni crea una columna separada para cada entrada del array. En este ejemplo, /tags sigue conteniendo un único array JSON en una celda:
["design","video"]
Si tu hoja de cálculo necesita una fila por etiqueta, prepara esa tabla explícitamente primero. Decide si repetir el ID del creador en cada fila y cómo representar una lista de etiquetas vacía. El convertidor no toma esas decisiones por ti.
Conserva el JSON si necesitas reconstruirlo después
CSV no tiene una distinción incorporada entre un valor faltante, null y una cadena vacía. Ambas notas en este ejemplo se exportan como celdas vacías. Convertir ese CSV de vuelta con la configuración predeterminada produce dos cadenas vacías.
El JSON reconvertido también mantiene /creator/name como clave literal y /tags como cadena. No reconstruye objetos anidados ni analiza el array automáticamente. Guarda el JSON original para poder recuperar su estructura.
El ID 001 se conserva como texto en este conversor. Una hoja de cálculo puede interpretarlo como número al abrir el CSV; importa la columna de ID como texto también allí. Deja Proteger CSV de fórmulas de hojas de cálculo activado para exportaciones destinadas a hojas de cálculo y revisa el archivo antes de compartirlo.
Lo que comprobamos
El 8 de octubre de 2026, ejecutamos el ejemplo a través de la misma función de conversión que la herramienta. Comprobamos ambas variantes de CSV, sus recuentos de dos filas, las cinco columnas aplanadas y la conversión de vuelta a JSON. El archivo de resultados contiene las salidas y los hashes de descarga.
La vista previa de la tabla muestra hasta 500 filas; no es un recuento de todo en la exportación. Verifica el total mostrado y el archivo descargado cuando trabajes con un conjunto de datos más grande.