Zum Inhalt springen

JSON ⇄ TOML umwandeln

JSON ⇄ TOML

Wandelt zwischen JSON und TOML um und bildet verschachtelte Objekte auf Tabellenköpfe ab.

Die JSON-⇄-TOML-Hälfte desselben Konverters, für den Moment, in dem eine `Cargo.toml`, eine `pyproject.toml` oder eine `netlify.toml` zu etwas werden muss, das ein Skript lesen kann – oder umgekehrt. TOML ist strenger als JSON darin, was ein Wert sein darf, und die Unterschiede zeigen sich als Warnungen statt als Überraschungen.

🔒 Läuft vollständig in Ihrem Browserjsontomlconvert
Von
Wird als YAML gelesen.
Nach

Eingabe

Eine .yaml-, .json- oder .toml-Datei ablegen

Wird in diesem Tab gelesen. Nichts wird hochgeladen.

JSON-Ausgabe

Hier geschrieben statt von npm geholt – die Teilmenge ist also gewählt und nicht geerbt. Was auf dieser Liste steht, wird beim Namen genannt und abgelehnt, statt falsch gelesen zu werden.

So funktioniert es

  1. Fügen Sie das TOML oder das JSON ein

    Die Erkennung unterscheidet die beiden leicht – `[section]`-Überschriften und nackte Schlüssel sind eindeutig –, aber die Von-Auswahl ist da, wenn Sie sichergehen wollen.

  2. Setzen Sie das Ziel auf TOML oder JSON

    In Richtung TOML werden Tabellen überall dort als `[section]`-Überschriften statt als Inline-Tabellen ausgegeben, wo die Form es erlaubt – so sieht eine von Hand gepflegte Konfiguration aus.

  3. Prüfen Sie, was TOML nicht fassen konnte

    Nulls werden weggelassen, und Datums-/Zeitwerte aus TOML werden zu Strings, weil JSON keinen Datumstyp hat. Beides wird in den Warnungen aufgeführt, wenn es geschieht.

Häufige Fragen

Warum wurden meine Datumsangaben zu Strings?

TOML hat erstklassige Offset-Datums-/Zeitwerte, lokale Datumsangaben und lokale Uhrzeiten; JSON hat nichts davon. Den Text hinüberzutragen ist die einzige verlustfrei aussehende Option, und der Rückweg nach TOML erzeugt einen String in Anführungszeichen statt des ursprünglichen Datumsliterals.

Kann es ein Array mit gemischten Typen konvertieren?

Nach JSON ja. Nach TOML wird das Array unverändert ausgegeben; TOML 1.0 erlaubt heterogene Arrays, aber etliche TOML-Leser in freier Wildbahn – und TOML 0.5 – tun das nicht, ein gemischtes Array ist also einen zweiten Blick wert, bevor Sie es committen.

Erkennt es doppelte Schlüssel?

Ja – ein zweimal definierter Schlüssel oder eine neu definierte Tabelle ist ein TOML-Fehler und wird als solcher gemeldet, statt stillschweigend den letzten Wert zu nehmen, wie es ein nachsichtiger Leser täte.

Eingabe aus

Danach

Diese Tools nehmen an, was dieses hier erzeugt, das Ergebnis kann also direkt weiter.