100 % locale — i tuoi dati non lasciano mai il tuo browser

JSON in TOML — una configurazione leggibile

Converti JSON in TOML. Tabelle, chiavi puntate e array di tabelle escono come una configurazione che si legge e si modifica a mano.

Istantaneo Privato Zero cookie

Input JSON

Output TOML

Che cosa fa questo strumento

Gli oggetti annidati diventano tabelle; gli array di oggetti, array di tabelle.

{
  "db": { "host": "localhost", "pool": { "size": 10 } },
  "servers": [{ "name": "a" }, { "name": "b" }]
}
[db]
host = "localhost"

[db.pool]
size = 10

[[servers]]
name = "a"

[[servers]]
name = "b"

La radice dev’essere un oggetto: un file TOML è una tabella, quindi un array JSON in cima non ha dove appendere le sue chiavi.

È null a fermare tutto

TOML non ha un valore nullo, e i due modi di fingere il contrario sono sbagliati:

  • togliere la chiave cambia ciò che il file dice — un’impostazione assente non è un’impostazione messa a nulla;
  • scrivere "" inventa un valore che non c’era.

Quindi la conversione si ferma e ti dice quale. È l’unico punto in cui rifiuta un documento JSON valido, e lo rifiuta perché finire vorrebbe dire mentire.

Gli interi oltre i 64 bit sono scritti così come sono

{ "id": 12345678901234567890 }

esce con tutte e venti le cifre. Gli interi TOML sono a 64 bit con segno: quel valore è fuori intervallo, e un lettore stretto rifiuterà il file.

È voluto. L’alternativa — arrotondarlo a 12345678901234567000, ciò che fa un convertitore che passa per un double — ti consegna un file che si analizza pulito e contiene un altro numero. Un fallimento rumoroso vale più di una bugia discreta.

Le date restano stringhe

JSON non ha un tipo data: "2026-01-01" arriva come testo ed esce come "2026-01-01", tra virgolette.

TOML ha date native, e usarne una vorrebbe dire decidere che l’autore pensasse a una data. A volte sì; a volte quella stringa è un codice prodotto, il nome di una cartella, una versione. JSON ci ha già detto che è testo, e non c’è motivo di contraddirlo.

Privato per progettazione

Tutto viene eseguito localmente nel browser con JavaScript. I tuoi dati non vengono mai caricati, quindi lo strumento è sicuro per contenuti sensibili e funziona anche offline.

Domande frequenti

Perché un null ferma la conversione?
Perché TOML non ha null, e i due modi di fingerlo sono sbagliati. Togliere la chiave cambia ciò che il file dice: un’impostazione assente non è un’impostazione messa a nulla. Scrivere una stringa vuota inventa un valore. La conversione si ferma e nomina la chiave: la decisione resta tua.
Il mio identificatore supera i 64 bit. Che succede?
Viene scritto com’è. Gli interi TOML sono a 64 bit con segno, quindi un valore di venti cifre è fuori intervallo e un lettore stretto rifiuterà il file — rumorosamente. È il fallimento giusto: l’alternativa è arrotondarlo a un altro numero e consegnarti un file che si analizza e mente.
Perché la mia data è una stringa tra virgolette?
Perché nel JSON era una stringa. TOML ha date native, ma scriverne una significherebbe decidere che `"2026-01-01"` è una data e non un codice prodotto o il nome di una cartella. JSON ci ha detto che era testo: testo resta.

Convertitori correlati