Conversione del formato da JSON a TOML — Numio
Converte un oggetto JSON in TOML. Gli oggetti annidati diventano sezioni [table], gli array di oggetti diventano [[array of tables]] e le chiavi con valori null vengono scartate perché TOML non ha null.
Trasformazione di una configurazione JSON nella sintassi di configurazione pyproject.toml, Cargo.toml, wrangler.toml o Hugo.
Quando usarlo
- Trasformazione di una configurazione JSON nella sintassi di configurazione pyproject.toml, Cargo.toml, wrangler.toml o Hugo.
- Spostamento delle impostazioni generate da uno script come JSON in un file di configurazione basato su TOML.
Come si usa
- Incolla un oggetto JSON (la radice deve essere un oggetto, non un array) nell'editor di sinistra o usa il pulsante carica file per aprire un file UTF-8.
- Controlla TOML a destra: le chiavi scalari vengono prima, poi le sezioni [table] e [[array]].
- Copia il risultato, quindi confrontalo con le chiavi documentate dello strumento di destinazione prima di sostituire la configurazione.
Oggetto JSON
{
"title": "My App",
"port": 8080,
"debug": false,
"owner": { "name": "Ada", "since": "2024-01-05T10:00:00Z" },
"servers": [
{ "host": "a.example.com", "weight": 3 },
{ "host": "b.example.com", "weight": 1 }
],
"ports": [80, 443]
}TOML
title = "My App" port = 8_080 debug = false ports = [ 80, 443 ] [owner] name = "Ada" since = "2024-01-05T10:00:00Z" [[servers]] host = "a.example.com" weight = 3 [[servers]] host = "b.example.com" weight = 1
Dettagli e limiti
I numeri interi pari o superiori a 1000 vengono separati da un carattere di sottolineatura (8080 diventa 8_080). Questo è TOML valido e analizza lo stesso numero.
Le stringhe di data rimangono stringhe tra virgolette; JSON non ha un tipo di data, quindi non vengono prodotti valori data/ora TOML.
Le chiavi con valori null vengono omesse automaticamente e 1.0 in JSON viene scritto come numero intero 1.
Viene eseguito nel tuo browser con @iarna/toml. Un elenco che mescola oggetti con altri valori viene rifiutato perché gli array di tabelle TOML non possono contenerli. Le sottotabelle sono rientrate di due spazi; TOML lo ignora.
FAQ
Posso convertire un array JSON alla radice?
No. Un documento TOML deve essere una tabella, quindi la pagina spiega che il JSON è un array e suggerisce di racchiuderlo in un oggetto, ad esempio {"items": [...]}.
Cosa succede ai valori nulli?
La chiave viene lasciata cadere. {"a": null} produce un output vuoto. Utilizza una stringa vuota o rimuovi deliberatamente la chiave se il target se lo aspetta.
Perché i numeri contengono trattini bassi?
Il serializzatore formatta numeri interi di grandi dimensioni con separatori di cifre _, consentito dalle specifiche TOML. Qualsiasi parser TOML legge 8_080 come 8080.