Guia de conversão entre TOML e JSON

JSON

Introdução ao TOML

TOML (Tom's Obvious Minimal Language) é um formato projetado especificamente para arquivos de configuração, criado pelo cofundador do GitHub, Tom Preston-Werner. Seus objetivos são:

  • Legível por humanos com semântica clara
  • Mapeável sem ambiguidade para uma tabela hash
  • Mais simples que YAML, mais amigável que JSON

Sintaxe básica

title = "TOML Example"

[owner]
name = "Alice"
email = "alice@example.com"

[database]
host = "127.0.0.1"
port = 5432
enabled = true

Comparação TOML vs JSON vs YAML

Recurso TOML JSON YAML
Comentários Suporta # Não Suporta #
Tipo data Nativo Não Não
Strings multilinha Sim Não Sim
Complexidade Baixa Média Alta
Ambiguidade de análise Nenhuma Nenhuma Sim
Uso principal Arquivos de configuração Troca de dados Arquivos de configuração

Convertendo com a ferramenta TOML↔JSON

Passo 1: Escolher a direção de conversão

Abra a ferramenta TOML↔JSON e selecione "TOML → JSON" ou "JSON → TOML".

Passo 2: Inserir dados

Cole o conteúdo TOML ou JSON na área de entrada. Também é suportado o upload direto de arquivos.

Passo 3: Converter

Clique no botão de conversão. Os resultados aparecem instantaneamente na área de saída.

Passo 4: Copiar ou baixar

Copie o resultado da conversão com um clique ou baixe como arquivo no formato correspondente.

Regras de mapeamento de TOML para JSON

Tipos básicos

string = "hello"
integer = 42
float = 3.14
boolean = true

Convertido para JSON:

{
  "string": "hello",
  "integer": 42,
  "float": 3.14,
  "boolean": true
}

Tabela → Objeto

[server]
host = "localhost"
port = 8080

Convertido para JSON:

{
  "server": {
    "host": "localhost",
    "port": 8080
  }
}

Arrays

ports = [8000, 8001, 8002]

Data e hora

TOML suporta nativamente tipos de data. Quando convertido para JSON, tornam-se strings:

created = 2026-06-01T10:00:00Z

"created": "2026-06-01T10:00:00Z"

Considerações de JSON para TOML

  • JSON null não tem equivalente em TOML — requer tratamento especial durante a conversão
  • Arrays de tipos mistos em JSON são inválidos em TOML
  • Objetos JSON aninhados tornam-se tabelas TOML
  • Revise os comentários e formatação após a conversão para garantir que atendam às suas necessidades

Casos de uso comuns

Projetos Rust: Cargo.toml

[package]
name = "my-app"
version = "0.1.0"
edition = "2021"

[dependencies]
serde = "1.0"
tokio = { version = "1", features = ["full"] }

Ao modificar versões de dependências, converta para JSON com a ferramenta TOML↔JSON para processamento programático e depois converta de volta.

Projetos Python: pyproject.toml

[project]
name = "my-package"
version = "1.0.0"
requires-python = ">=3.8"

[project.dependencies]
requests = "^2.28"
flask = "^2.3"

Configuração de sites estáticos

Geradores de sites estáticos como Hugo e Zola usam TOML como formato de configuração, frequentemente exigindo conversão de/para JSON.

Interoperabilidade com outros formatos

  1. TOML ↔ YAML: Primeiro converta para JSON com a ferramenta TOML↔JSON, depois para YAML com a ferramenta YAML↔JSON
  2. Valide os resultados intermediários com o Formatador JSON
  3. Preserve os comentários originais do TOML e adicione-os manualmente após a conversão

Erros comuns

Erro Causa Solução
Falha na análise TOML Erro de sintaxe Verifique os cabeçalhos de tabela e o formato chave-valor
Problema de formato de data Fuso horário ausente Use o formato ISO 8601 completo
null não pode ser convertido TOML não possui null Use string vazia ou remova o campo
Erro de formato de tabela inline Sintaxe não padrão Use formato de tabela padrão em vez

Resumo

TOML é uma excelente escolha para arquivos de configuração modernos, e a conversão de/para JSON é muito prática para o gerenciamento de configuração de projetos. A ferramenta TOML↔JSON permite conversão rápida de formatos, e combinada com a ferramenta YAML↔JSON, você pode alternar livremente entre os três formatos.

#TOML#JSON#配置文件#Rust#Python