logo
GeekFormat

Formatador JSON

Nenhum conteúdo ainda

preview.json
Pronto

Ferramenta online gratuita de formatação JSON, suporta embelezamento, validação, compactação e edição visual em árvore JSON. Com detecção de erros de sintaxe e reparo automático integrados, suporta conversão para 13 linguagens de programação (TypeScript/Java/Python/Go/Rust/Swift/Kotlin/C#/C++/PHP/MySQL/YAML/XML), ideal para depuração de APIs, verificação de configurações e leitura de logs.

Sugestões Relacionadas

Casos de uso

  • JSON de uma linha retornado por API precisa ser embelezado em estrutura legível para facilitar investigação de problemas
  • Arquivos de configuração e campos de log precisam ser formatados antes de processamento adicional
  • Durante desenvolvimento e depuração, verificar rapidamente se JSON é válido e compactar seu volume
  • Necessidade de converter JSON para formatos de código como interfaces TypeScript, classes Java ou dicionários Python
  • Ao comparar dois valores de retorno de API, ordenar por nome de chave antes de verificar diferenças campo por campo
  • Organizar estruturas aninhadas complexas de APIs de terceiros, usar visualização em árvore ou mapa mental para entender rapidamente a hierarquia
  • Expandir para leitura logs de eventos compactados, dados de Webhook, localizar campos anômalos
  • Formatar JSON compacto em variáveis de ambiente locais ou configurações para edição, depois compactar de volta para gravar

Recursos

  • Embelezamento JSON mais intuitivo: organiza rapidamente dados de uma linha em estrutura hierárquica legível, com opção de indentação de 2/4 espaços ou Tab
  • Suporta validação e compactação: detecta erros de sintaxe em tempo real com indicação precisa de posição, compacta para linha única mais compacta com um clique
  • Conversão para 13 linguagens de programação: geração com um clique para TypeScript/Java/Python/Go/Rust/Swift/Kotlin/C#/C++/PHP/MySQL/YAML/XML
  • Edição visual em árvore JSON: recolher/expandir nós, visualizar e modificar estruturas aninhadas profundas de forma intuitiva
  • Visualização de mapa mental: apresenta relações pai-filho entre objetos/arrays por meio de conexões de nós, ideal para organizar estruturas complexas
  • Ordenação de chaves: reorganiza chaves de objetos em ordem alfabética crescente/decrescente, facilitando comparação de diferenças e padronização da ordem dos campos
  • Processamento fluido de arquivos grandes: rolagem virtual + análise em segundo plano com Web Worker, JSONs de vários MB sem travamentos
  • Privacidade e segurança: execução 100% local no navegador, zero envio de dados, seguro para processar retornos contendo chaves
  • Operações convenientes: upload/download de arquivos, cópia com um clique, retrocesso de histórico, compartilhamento por URL tudo disponível

Como Usar

  1. Cole conteúdo JSON ou faça upload de arquivo JSON
  2. Escolha modo de embelezamento, compactação ou validação, também pode alternar para visualização em árvore/mapa mental para visualização visual
  3. Visualize a estrutura hierárquica formatada e avisos de erro, se necessário alterne para conversão de código para gerar estrutura da linguagem alvo
  4. Copie o conteúdo processado, baixe o arquivo ou gere link compartilhável

Perguntas frequentes

Como formatar rapidamente um JSON de uma linha em estrutura legível?

Cole o conteúdo JSON e ele será rapidamente embelezado, ideal para visualizar valores de retorno de API, arquivos de configuração e campos de log. A ferramenta adicionará automaticamente indentação e quebras de linha, organizando dados compactos em uma estrutura hierárquica clara. Por padrão usa 2 espaços de indentação, você também pode alterar o tamanho da indentação na barra de ferramentas.

Qual é a diferença entre formatação JSON e reparo JSON?

Formatação JSON é mais adequada para conteúdo que é válido em si mas difícil de ler, enquanto reparo JSON é mais adequado para estruturas inválidas com erros, aspas faltando, vírgulas finais. Se houver erro durante a formatação, recomendamos fazer o reparo JSON primeiro. Simplificando: formatação apenas ajusta a aparência sem alterar o conteúdo, reparo tenta completar aspas/parênteses faltantes e remover vírgulas extras para torná-lo um JSON válido novamente.

Por que recebo erro ao formatar JSON?

Geralmente porque o conteúdo em si não é um JSON válido, como comentários extras, aspas simples, vírgulas finais ou parênteses não fechados. A especificação JSON (RFC 8259) exige que chaves usem aspas duplas, strings não podem usar aspas simples, não pode haver vírgula após o último elemento, não são permitidos comentários // ou /* */. Nesse caso é mais adequado fazer reparo JSON primeiro, depois formatar.

É adequado para depuração de API e visualização de retornos de log?

Muito adequado. Valores de retorno de API, dados de Webhook, logs de eventos e fragmentos de configuração frequentemente precisam ser formatados antes da investigação. A ferramenta também suporta edição visual em árvore JSON, visualização de mapa mental e conversão para 13 linguagens de programação, ajudando você a entender rapidamente a estrutura dos dados.

Posso converter JSON para interfaces TypeScript ou classes Java?

Sim. A ferramenta suporta conversão de JSON para 13 formatos: TypeScript/Java/Python/Go/Rust/Swift/Kotlin/C#/C++/PHP/MySQL/YAML/XML, gerando estrutura de código correspondente com um clique, muito adequado para gerar rapidamente modelos de dados front-end e back-end a partir de valores de retorno de API.

Os dados JSON formatados são enviados para o servidor?

Não. Toda formatação, validação, compactação e conversão de código são executadas completamente localmente no navegador, os dados não são enviados para nenhum servidor. Mesmo ao processar retornos de API contendo chaves, Tokens ou informações privadas de usuários é seguro, os dados são limpos ao fechar a página.

Consegue processar arquivos JSON muito grandes?

Sim. A ferramenta usa renderização com rolagem virtual e análise em segundo plano com Web Worker, JSONs de vários MB também podem ser formatados e navegados fluentemente sem travar a página. Para arquivos muito grandes recomendamos fazer upload direto do arquivo JSON em vez de colar, para desempenho mais estável.

Para que serve a compactação JSON (Minify)?

A compactação remove todos os espaços e quebras de linha desnecessários do JSON, obtendo o resultado mais compacto em uma linha. Isso reduz significativamente o volume, economiza largura de banda e armazenamento, frequentemente usado para transmissão de API, gravação em configurações, incorporação em código ou como variável de ambiente. JSON compactado é semanticamente idêntico ao formatado, apenas não é legível para humanos.

O que são visualização em árvore JSON e visualização de mapa mental?

A visualização em árvore renderiza o JSON como uma árvore hierárquica recolhível, suporta expandir/recolher nós e editar campos visualmente, ideal para navegar dados com aninhamento profundo. A visualização de mapa mental apresenta a estrutura por meio de conexões entre nós, exibindo de forma intuitiva as relações pai-filho entre objetos e arrays, ideal para organizar estruturas de dados complexas ou fazer apresentações.

Após a formatação, posso ordenar por nome de chave?

Sim. A ferramenta oferece função de ordenação de chaves, suporta reorganizar as chaves dos objetos em ordem alfabética crescente ou decrescente, facilitando a comparação de diferenças entre dois JSONs, padronizando a ordem dos campos em arquivos de configuração, ou exibindo campos de API em ordem fixa para facilitar Code Review.

Posso compartilhar o resultado formatado com colegas?

Sim. A ferramenta suporta compactar e codificar o conteúdo JSON atual na URL, gerando um link compartilhável. Quem abrir o link verá os mesmos dados sem necessidade de envio ao servidor, ideal para colaborar rapidamente na investigação de problemas de API ou reproduzir cenários de dados.

Sobre JSON e Formatação JSON

JSON (JavaScript Object Notation) é um formato leve de troca de dados que usa pares chave-valor e arrays para representar dados. Devido às suas características de simplicidade, legibilidade e independência de linguagem, tornou-se o padrão de fato para APIs Web, arquivos de configuração, logs e transmissão de dados entre front-end e back-end. JSON possui apenas seis tipos básicos de valores: string, número, booleano, null, objeto e array, as regras de sintaxe são definidas conjuntamente pelos padrões RFC 8259 e ECMA-404.

Formatação JSON (também chamada de embelezamento JSON, JSON Beautify) refere-se a adicionar indentação e quebras de linha razoáveis a um JSON compacto sem alterar o conteúdo dos dados, organizando-o em uma forma hierárquica conveniente para leitura humana. JSONs em valores de retorno de API, logs e armazenamento geralmente são compactados em uma linha, muito difíceis de ler diretamente; após formatação você pode ver claramente o aninhamento de objetos, elementos de array e valores de cada campo.

A operação oposta à formatação é a compactação JSON (Minify), que remove todos os caracteres de espaço não essenciais, retornando o JSON à forma de linha única mais compacta para reduzir o volume de transmissão. Formatação e compactação são operações inversas uma da outra, ambas não alteram a semântica do JSON, afetam apenas legibilidade e volume.

Validação JSON é verificar se um trecho de texto atende à especificação de sintaxe JSON. Escritas inválidas comuns incluem: usar aspas simples em vez de aspas duplas, chaves sem aspas, vírgula final extra após o último elemento, conter comentários // ou /* */, parênteses ou aspas não fechados corretamente etc. Estes não são JSONs válidos e causarão erro durante formatação — nesse caso você deve usar a ferramenta de reparo JSON primeiro, depois formatar.

Esta ferramenta, além da formatação, também oferece visualização em árvore, visualização de mapa mental e capacidade de conversão para 13 linguagens de programação: você pode recolher o JSON em uma árvore hierárquica visual para navegar estruturas profundas, ou converter com um clique JSON retornado por API para interfaces TypeScript, classes Java, dicionários Python ou instruções de criação de tabelas de banco de dados para uso direto no desenvolvimento. Todo processamento é feito localmente no navegador, os dados não são enviados ao servidor.

Tabela Rápida de Tipos de Dados JSON

JSON possui apenas seis tipos de valores, entendê-los ajuda a julgar rapidamente se os dados são válidos e como mapear para tipos de linguagens de programação.

TipoExemploDescrição
string"hello"String, deve usar aspas duplas, suporta caracteres de escape e codificação Unicode \uXXXX.
number25 / 3.14 / -1e5Número, suporta inteiros, decimais e notação científica, analisado como ponto flutuante de precisão dupla, não distingue inteiro e ponto flutuante.
booleantrue / falseBooleano, só pode ser 'true' ou 'false' em minúsculas.
nullnullValor nulo, representa ausência de dados, deve ser minúsculo, diferente de string vazia ou 0.
object{"k": "v"}Objeto, coleção de pares chave-valor envolvida por chaves, chaves devem ser strings com aspas duplas.
array[1, 2, 3]Array, lista ordenada de valores envolvida por colchetes, os elementos podem ter tipos diferentes.

Tabela de Caracteres de Escape em Strings JSON

Os seguintes caracteres em strings JSON devem ser escapados com barra invertida, caso contrário causarão falha na análise.

EscapeSignificado
\"Aspas duplas
\\Barra invertida
\/Barra normal (escape opcional)
\nQuebra de linha
\rRetorno de carro
\tTabulação (Tab)
\bBackspace
\fAlimentação de formulário
\uXXXXCaractere Unicode representado por quatro dígitos hexadecimais

Tabela Comparativa de Escritas Inválidas Comuns

Abaixo estão listadas escritas JSON inválidas fáceis de errar e suas formas válidas, você pode verificar quando houver erro de formatação.

Escrita InválidaEscrita VálidaDescrição
{name: "a"}{"name": "a"}Chaves devem usar aspas duplas
{'name': 'a'}{"name": "a"}Strings devem usar aspas duplas, não podem usar aspas simples
{"a": 1,}{"a": 1}Não é permitida vírgula final
{"a": 1} // comentário{"a": 1}JSON não suporta comentários
{"a": undefined}{"a": null}Não existe undefined, use null para valor nulo
{"a": .5}{"a": 0.5}Decimais devem ter parte inteira 0

Code Examples

JavaScript: Formatando JSON com JSON.stringify

javascript

O terceiro parâmetro de JSON.stringify nativo em navegadores e Node.js especifica a indentação, é a forma programática mais comum de formatar JSON.

const data = { name: '张三', age: 25, tags: ['a', 'b'] };

// Embelezar: terceiro parâmetro é número de espaços de indentação (também pode passar '\t' para usar Tab)
const pretty = JSON.stringify(data, null, 2);
console.log(pretty);

// Compactar: sem terceiro parâmetro obtém linha única mais compacta
const mini = JSON.stringify(data);
console.log(mini); // {"name":"张三","age":25,"tags":["a","b"]}

// Analisar string para objeto (valida sintaxe, lança SyntaxError se inválido)
const obj = JSON.parse(pretty);

Python: Formatando com módulo json

python

O módulo json da biblioteca padrão Python controla indentação e exibição de caracteres chineses através de parâmetros indent e ensure_ascii.

import json

data = {"name": "张三", "age": 25, "tags": ["a", "b"]}

# Saída embelezada, indent especifica indentação, ensure_ascii=False preserva caracteres chineses
pretty = json.dumps(data, indent=2, ensure_ascii=False)
print(pretty)

# Saída compacta: usar separadores mais compactos
mini = json.dumps(data, separators=(",",":"), ensure_ascii=False)
print(mini)

# Analisar string (lança json.JSONDecodeError se inválido)
obj = json.loads(pretty)

Linha de comando: Formatando JSON com jq

bash

jq é uma ferramenta poderosa para processar JSON na linha de comando, pode embelezar, compactar e extrair campos rapidamente.

# Embelezar (indentação padrão de 2 espaços)
cat data.json | jq '.'

# Compactar para linha única
cat data.json | jq -c '.'

# Extrair campo específico
cat data.json | jq '.user.name'

# Resultado de curl diretamente em pipe para embelezar
curl -s https://api.example.com/user | jq '.'

Privacy & Security

Toda formatação, validação, compactação e conversão de código JSON desta ferramenta são executadas completamente localmente no seu navegador, os dados não são enviados para nenhum servidor, nem são registrados ou armazenados em cache remotamente. Mesmo ao processar retornos de API contendo chaves, Tokens e informações de usuários é seguro, os dados são limpos ao fechar ou atualizar a página.

Authoritative References

Troubleshooting

Unexpected token ... in JSON (caractere inesperado / erro de sintaxe)

Provavelmente causado por uso de aspas simples, chaves sem aspas duplas, ou contendo comentários // e /* */. A especificação JSON exige que todas as strings e chaves usem aspas duplas e não suporta comentários. Altere para aspas duplas e remova comentários, ou use a ferramenta de reparo JSON primeiro.

Unexpected end of JSON input (fim inesperado do conteúdo)

Geralmente porque parênteses {} ou [] e aspas não foram fechados corretamente, tornando o JSON incompleto. Verifique se a estrutura está fechada aos pares. Ao colar valores de retorno de API, pode ter copiado apenas parte do conteúdo, confirme que copiou completamente.

Erro causado por vírgula final (Trailing comma)

JSON não permite vírgula após o último elemento de um objeto ou array, por exemplo {"a":1,} ou [1,2,] são inválidos. Basta remover a vírgula extra. Objetos JavaScript permitem vírgula final, mas JSON não, tome cuidado especial ao copiar de código.

Caracteres chineses ou especiais exibidos como \uXXXX

Esta é a notação de escape Unicode do JSON, é válida por si só e ainda pode ser analisada normalmente após formatação. Se desejar exibir caracteres chineses diretamente, configure para não escapar no lado gerador (como ensure_ascii=False no Python, desativar escape HTML no Go).

Perda de precisão em números grandes (como IDs virando notação científica ou final zerado)

Números JSON são analisados em ponto flutuante de precisão dupla IEEE 754, inteiros que excedem 2^53 (como IDs floco de neve, números de pedido) perdem precisão. A solução é envolver inteiros grandes em strings durante transmissão, ou seja, "id": "9007199254740993", para evitar serem analisados como números.

Após formatar quero voltar para uma linha

Basta alternar para 'Compactar / Minify' para reverter o JSON multilinha embelezado de volta à forma de linha única mais compacta, para transmissão de API, gravação em configurações ou incorporação em código. Compactar e embelezar são operações inversas, não alteram o conteúdo dos dados.