Ir al contenido principal
Bethemesh

Aplanar JSON anidado

Aplana JSON anidado como datos tabulares: elige el separador de rutas y el tratamiento de arrays, revisa las columnas generadas y exporta a CSV o Excel.

  • Exportar
Automatizar

Integrar este widget

Personaliza el aspecto, comprueba la vista previa y copia el código.

Vista previa

Tipo de código de integración

Código para copiar

Se adapta a tu página y Bethemesh ajusta su tamaño automáticamente.

Aplana objetos JSON anidados en columnas con rutas explícitas para reutilizarlos como datos tabulares.

Tus archivos se procesan localmente en el navegador y nunca se envían a nuestros servidores.

Suelta tu archivo aquí

Tamaño recomendado: hasta 30 MB

Opciones

¿Te ha resultado útil esta herramienta?

¿Cómo funciona esta herramienta?

Un JSON anidado suele describir fichas con subobjetos, como cliente.direccion.ciudad, y listas de etiquetas o contactos. Aplanar convierte esa estructura en columnas cuyos nombres representan las rutas, para usar los datos en CSV o en una hoja de cálculo. La herramienta conserva valores escalares y ofrece dos tratamientos para listas internas. No valida un esquema de negocio, no selecciona expresiones JSONPath ni genera una fila independiente por cada elemento de una lista anidada.

Importa un JSON de hasta 30 MiB. La raíz debe ser un objeto o una matriz; un escalar aislado como 42 o null se rechaza. Un objeto raíz genera una fila. Una matriz raíz genera una fila por elemento: los escalares van a la columna value y los objetos se aplanan. Todo ocurre en el navegador. Se aplica el análisis JSON nativo: comentarios y comas finales son inválidos, los enteros muy grandes pueden perder precisión y las claves repetidas conservan su último valor antes del aplanado.

Las claves de subobjetos se unen con el separador elegido, un punto por defecto. Un objeto direccion con ciudad produce direccion.ciudad. Ese separador no se escapa en las claves originales. Si una clave literal direccion.ciudad coincide con la misma ruta anidada, el proceso falla en vez de sobrescribir valores. Elige un separador ausente de las claves o renómbralas antes. Los objetos vacíos se conservan como texto {} y no desaparecen silenciosamente de la tabla.

Por defecto, cada lista interna permanece en una celda como texto JSON, por ejemplo ["azul","verde"]. El modo índice crea columnas terminadas en 0, 1 y siguientes, recorriendo también los objetos de esas posiciones. No despliega listas en filas ni crea productos cartesianos entre ellas. Las listas vacías permanecen como [] en ambos modos. Números, booleanos y null conservan sus tipos escalares; las propiedades ausentes aparecen vacías al exportar. Revisa la vista previa y descarga CSV o XLSX.

Cómo utilizar esta herramienta

  1. Revisar raíz y claves

    Examina objetos, listas y separadores ya presentes en los nombres. Confirma que cada elemento de la matriz raíz representa un registro esperado.

  2. Elegir el tratamiento de listas

    Conserva JSON para mantener cada lista en una celda o usa índice para comparar posiciones. Ninguna opción añade una fila por elemento interno.

  3. Comprobar la tabla

    Inspecciona una ruta anidada, una lista vacía y una propiedad ausente. Revisa identificadores numéricos largos: la precisión perdida durante el análisis no se recupera después.

Casos de uso

Revisar una exportación de API

Expón direcciones y preferencias en columnas sin copiar manualmente cada ruta anidada.

Preparar una tabla de importación

Aplana subobjetos para un sistema receptor que solo acepta celdas escalares.

Comparar posiciones fijas

Desarrolla listas cortas por índice cuando sus posiciones tengan un significado coherente entre registros.

Ejemplos

Conservar una lista en una ficha

Con punto y modo JSON predeterminados aparecen cliente.nombre y cliente.ciudad; etiquetas permanece como texto JSON en una celda.

Entrada

{"cliente":{"nombre":"Ada","ciudad":"Madrid"},"etiquetas":["pro","activo"]}

Resultado

cliente.nombre;cliente.ciudad;etiquetas
Ada;Madrid;"[""pro"",""activo""]"

Exponer posiciones de una lista

Con punto y modo índice aparecen puntos.0 y puntos.1. La lista vacía se conserva como [] en una columna puntos.

Entrada

[{"id":1,"puntos":[7,9]},{"id":2,"puntos":[]}]

Resultado

id;puntos.0;puntos.1;puntos
1;7;9;
2;;;[]

Consejos y buenas prácticas

  • Elige un separador que no aparezca en las claves originales. Los puntos facilitan leer rutas, pero una convención explícita es más segura que asumir que nunca habrá puntos literales.
  • Guarda identificadores largos como cadenas en el JSON original. Los números JavaScript tienen precisión finita y el aplanado no repara un entero redondeado durante la lectura.
  • Evita el modo índice para listas muy largas si no necesitas cada posición. Miles de columnas generadas pueden ser menos prácticas que conservar el texto JSON completo.

Preguntas frecuentes

¿El modo índice crea una fila por elemento?

No. Crea columnas como contactos.0.nombre y contactos.1.nombre en la misma fila. Una fila por contacto necesita otra transformación y una regla explícita para repetir identificadores. Las listas anidadas no se combinan automáticamente entre sí.

¿Por qué una colisión detiene el proceso?

Una clave literal a.b y un objeto a que contiene b producen la misma ruta con punto. Elegir una perdería datos. El motor informa del conflicto; cambia el separador o renombra las claves originales para que sus rutas sean inequívocas.

¿En qué se diferencia de CSV a JSON?

El convertidor CSV/JSON espera una tabla plana de celdas escalares. El aplanado prepara datos anidados para ese uso. Algunas listas permanecen como texto JSON según el modo elegido y la tabla no garantiza reconstruir exactamente el objeto original.

¿Acepta cualquier documento JSON válido?

La raíz debe ser un objeto o una matriz con sintaxis JSON estándar. Las raíces escalares aisladas se rechazan. Los archivos se leen en memoria del navegador; el límite de 30 MiB no garantiza comodidad con estructuras muy profundas o tablas muy anchas.

Herramientas relacionadas

Herramientas similares o complementarias a esta.

Herramientas similares

Convierte archivos Excel, CSV y otros formatos de hojas de cálculo directamente en tu navegador.

Datos y hojas de cálculoDestacadaUsar esta herramienta

Genera sentencias SQL INSERT desde Excel, CSV o JSON.

Datos y hojas de cálculoUsar esta herramienta