TTabulens RUEN Windows Abrir o app

JSON aninhado em uma tabela plana

O JSON é uma árvore e uma tabela é um retângulo. Traduzir uma coisa na outra é sempre um compromisso, e é importante entender qual compromisso você está escolhendo.

Atualizado 2026-09-30 · formato JSON

Objetos aninhados: fácil

Um objeto dentro de outro é desdobrado em colunas unidas por um ponto:

{"id": 1, "dono": {"sobrenome": "Silva", "nome": "Ana"}} → colunas id, dono.sobrenome, dono.nome.

Nada se perde e os nomes continuam claros. A única sutileza é a profundidade: no quinto nível de aninhamento os nomes ficam ilegíveis, então vale parar em uma profundidade razoável e deixar o resto como está.

Arrays: aqui começa a escolha

Um array de valores simples — "tags": ["a", "b"] — é unido, com bom senso, em um texto a, b. Lê-se bem, dá para achar pela busca e não gera colunas.

Um array de objetos — "itens": [{...}, {...}] — já é uma segunda tabela dentro da primeira. Há três opções:

A terceira opção é a escolha de “o que conta como linha”. Ela também resolve a mesma tarefa no XML e é descrita no artigo sobre achatar XML: a mecânica é idêntica, só a sintaxe muda.

Chaves diferentes em objetos diferentes

Ninguém prometeu que todo elemento de um array tem o mesmo conjunto de campos. Metade dos registros pode nem ter o campo dono.

As colunas são montadas como a união das chaves: se um campo ocorre em pelo menos um elemento, a coluna aparece e fica vazia para os demais. Isso é mais honesto que pegar as chaves do primeiro elemento, o que faria parte dos dados sumir em silêncio.

Uma consequência prática: quando você vir uma coluna preenchida em só 3% das linhas, não corra a chamá-la de erro. Provavelmente é assim que a origem é construída.

Onde a tabela realmente está

Exportações de API raramente são um array puro. Mais frequentemente são um objeto com metadados, e os dados estão em algum lugar dentro:

{"status": "ok", "dados": {"total": 1500, "itens": [ ... ]}}

O array precisa ser procurado em todo o documento, não só na raiz, e com vários candidatos deve-se propor o maior array de objetos — em geral são os dados. Mas a decisão deve ficar com a pessoa: às vezes você precisa justamente da lista pequena de consulta. No Tabulens você escolhe em Leitura do arquivo.

Perguntas frequentes

Por que há uma coluna com valores como {"a":1}?

É um objeto aninhado que não foi desdobrado — ou o desdobramento está desligado ou o limite de profundidade foi excedido.

Posso transformar a tabela de volta em JSON?

Pode, há exportação para JSON e JSON Lines. As colunas planas com ponto continuam planas, porém: o aninhamento original não é restaurado.

E se as chaves do meu JSON não forem em inglês?

Nada de especial: elas viram nomes de coluna como estão, com acentos e tudo. Só há problemas na exportação para DBF, onde o nome de um campo não pode passar de dez caracteres.

Seu arquivo não sai do seu computador. A leitura acontece no navegador, em uma thread em segundo plano. A política de segurança da página proíbe enviar dados a endereços de terceiros — você pode conferir isso nas ferramentas do desenvolvedor. Depois da primeira visita, o aplicativo funciona também sem internet.
Abrir o aplicativo Baixar para Windows

Grátis para uso pessoal. Seu arquivo não é enviado a nenhum servidor. Versão para Windows — 3.5 MB, sem instalação: detalhes. Para organizações — licença.

Leia também