Conversor de TOML para JSON

Cole um arquivo TOML, como um arquivo de configuração ou um Cargo.toml. A ferramenta o lê pelas regras do TOML 1.0.0 e escreve os mesmos dados como JSON, ou informa a linha onde uma regra não é cumprida.

Gratuita Funciona no seu navegador Verificada em quarta-feira, 11 de novembro de 2026

O arquivo inteiro. Chaves, tabelas, listas e valores são lidos do jeito que a especificação os escreve. Nada é enviado nem guardado.

Resultado

JSON — Copie-o, ou baixe-o como data.json.
Verificação — Verde quando o documento segue o TOML 1.0.0. Vermelho indica a linha e a regra que ele quebra.
JSON

Esta ferramenta funciona no seu navegador. O que você digita não é enviado para nós.

Como usar

  1. Cole o arquivo TOML em Documento TOML, ou mantenha o exemplo que está lá.
  2. Leia a Verificação. Verde significa que o arquivo segue o TOML 1.0.0. Vermelho indica a linha e a regra que o arquivo quebra.
  3. Copie a saída JSON, ou baixe-a como data.json.

Como a conversão funciona

O leitor segue a gramática do TOML 1.0.0 e monta a árvore que a especificação descreve. Essa árvore é então escrita como JSON com dois espaços de indentação, e as chaves mantêm a ordem do arquivo, então o JSON se lê como o TOML.

  • Uma tabela e as suas subtabelas viram objetos JSON.
  • Uma lista vira um array JSON. Uma lista de tabelas, que o TOML escreve com colchetes duplos, vira um array JSON de objetos.
  • Uma tabela inline vira um objeto JSON. Suas chaves mantêm a ordem da linha.

O que o JSON não consegue guardar

  • Uma data, uma hora ou uma data com fuso vira o seu texto, como "1979-05-27T07:32:00-08:00". O JSON não tem tipo de data, e o texto guarda o fuso e todos os dígitos da fração.
  • Infinito ou NaN vira a string "inf", "-inf" ou "nan", porque o JSON não tem esse número.
  • Um ponto flutuante sem fração, como 1.0, é escrito como 1.0, e um inteiro como 1 é escrito como 1. Um leitor de JSON que conhece só um tipo de número lê os dois como o mesmo número.

As regras que a conferência segue

Um arquivo é recusado assim que quebra uma regra da especificação. Estas regras causam a maioria dos erros:

  • Uma chave só pode ser definida uma vez. Uma chave nua e uma chave entre aspas com o mesmo nome são a mesma chave.
  • Um cabeçalho de tabela define a sua tabela uma vez. Uma tabela que um cabeçalho mais longo apenas implicou pode ser definida depois, mas uma tabela criada por chaves com pontos ou por uma tabela inline não pode.
  • Uma lista de tabelas cresce uma tabela a cada cabeçalho escrito com colchetes duplos. Uma lista estática, como a escrita com um par de colchetes vazio, não cresce desse jeito.
  • Um inteiro é um número com sinal de 64 bits, de −9223372036854775808 a 9223372036854775807.

Exemplo resolvido: uma data, um ponto flutuante e um inteiro grande

Cada linha dá uma linha de TOML e o valor JSON que a ferramenta escreve para ela. Cole as quatro linhas juntas para ver o mesmo resultado em uma só saída.

Linha TOML Valor JSON
when = 1979-05-27T07:32:00-08:00 "when": "1979-05-27T07:32:00-08:00"
ratio = 1.0 "ratio": 1.0
port = 8000 "port": 8000
id = 9223372036854775807 "id": 9223372036854775807

Perguntas frequentes

Por que uma data é escrita como texto no JSON?

O JSON não tem tipo de data ou de hora, então a ferramenta escreve o texto que o arquivo TOML guarda. O texto mantém o fuso e todos os dígitos da fração, então nada se perde quando o JSON é lido.

Por que 1.0 continua 1.0 e 1 continua 1?

O TOML distingue um inteiro de um ponto flutuante pelo ponto ou pelo expoente, e o JSON guarda essa diferença nos dígitos que escreve. Se um leitor de JSON mantém a diferença depende desse leitor.

Por que a ferramenta recusa uma tabela definida duas vezes?

O TOML 1.0.0 deixa um cabeçalho de tabela definir a sua tabela uma vez, e uma chave só uma vez. A segunda definição é um erro na linha em que está escrita, então o JSON nunca tem um valor que contradiz o arquivo.

Os comentários e a ordem das chaves são mantidos?

Os comentários são descartados, porque o JSON não tem comentários. A ordem das chaves é mantida, pois os membros são escritos na ordem do arquivo.

Um arquivo TOML com um array em várias linhas pode ser convertido?

Pode. Um array pode ocupar várias linhas e terminar com vírgula, como o TOML 1.0.0 permite, e a ferramenta o escreve como um único array JSON.

O texto que eu colo é enviado para algum lugar?

Não. A conversão roda no seu navegador, e nada do que você cola é guardado nem enviado para nós. Mesmo assim, não cole uma senha ou um token em uma página em que você não confia.

Fontes

Números e texto verificados pela última vez em quarta-feira, 11 de novembro de 2026.

Usamos cookies necessários para o site funcionar. Com o seu consentimento, o Google também usa cookies de publicidade para mostrar anúncios personalizados. Se você recusá-los, continuará vendo anúncios, mas eles não serão personalizados.