Ferramentas para programadores

Formatador e validador JSON

Formate, valide e minifique JSON ou ordene chaves sem arredondar números. Cole texto ou abra um ficheiro JSON local.

Os seus valores

Os números JSON são preservados exatamente. Limite de entrada: 2 MiB.

Os seus resultados

Formatar JSON sem arredondar identificadores numéricos

Valide a sintaxe JSON e torne uma entrada válida legível ou compacta. O analisador preserva as representações numéricas originais, incluindo inteiros grandes e a escrita decimal ou exponencial, em vez de os arredondar através de números JavaScript. Trata-se de uma verificação de sintaxe, não de uma validação face ao esquema da aplicação.

Passo a passo

  1. Cole JSON ou abra um ficheiro JSON/texto local em UTF-8. Escolha dois espaços, quatro espaços, tabulações ou saída compacta; se necessário, ordene as chaves dos objetos.
  2. Processe a entrada. Corrija a linha e a coluna indicadas se a análise falhar; verifique os avisos de chaves duplicadas mesmo quando a formatação for bem-sucedida.
  3. Copie, transfira ou imprima o resultado. Depois de editar a entrada ou as opções, processe novamente: o resultado anterior é apagado para evitar copiar uma saída desatualizada.

Definições e limites

O que muda com a ordenação
A ordenação é lexicográfica, distingue maiúsculas de minúsculas e aplica-se também a objetos aninhados. A ordem das listas não muda. As representações numéricas mantêm-se exatas, mas as sequências de escape das cadeias podem ser normalizadas; a saída não é idêntica à origem byte a byte.
Sintaxe JSON estrita
Use aspas duplas nas chaves e cadeias de texto. Comentários, vírgulas finais, NaN e Infinity são inválidos. Um valor válido no nível superior pode ser um objeto, lista, cadeia, número, booleano ou null.
Tamanho e complexidade
A entrada está limitada a 2 MiB (2 097 152 bytes UTF-8). Documentos muito profundos ou complexos também são rejeitados: o analisador limita o aninhamento a 128 níveis e os nós de valores a 200 000.

Exemplo resolvido

Cole a entrada de exemplo abaixo, escolha saída compacta e ative a ordenação. Processe-a e compare o resultado, ou abra o ficheiro transferível precision-example.json.

Transferir os ficheiros de exemplo

Entrada de exemplo

{"b":2,"a":9007199254740993}

Resultado esperado

{"a":9007199254740993,"b":2}

A chave a passa para antes de b, enquanto 9007199254740993 permanece inalterado. Um formatador baseado na conversão normal em números JavaScript poderia arredondar esse identificador; esta ferramenta mantém a representação numérica original.

Perguntas e resolução de problemas

Porque é que um ficheiro que funciona como JavaScript falha aqui?

A sintaxe dos objetos JavaScript pode permitir comentários, aspas simples ou chaves sem aspas. JSON não o permite. Corrija explicitamente a origem; esta ferramenta não repara silenciosamente uma entrada inválida.

As chaves duplicadas são removidas?

Não. Ambas as entradas permanecem e é apresentado um aviso. Resolva os duplicados antes de enviar o JSON para outro sistema, pois diferentes analisadores podem interpretá-los de forma diferente.

E se o botão Copiar estiver bloqueado?

A ferramenta seleciona a saída para cópia manual quando o acesso à área de transferência falha. Também pode transferir formatted.json. A formatação não altera o ficheiro original.