TOML in JSON umwandeln

TOML in JSON umwandeln und prüfen: Der Parser liest Tabellen, Arrays von Tabellen, Inline-Tabellen und alle String-Varianten, etwa aus pyproject.toml oder Cargo.toml.

TOML
JSON

 

Alles läuft in Ihrem Browser. Eingaben verlassen Ihr Gerät nicht.

TOML lesen und umwandeln

TOML ist ein Format für Konfigurationsdateien, das besonders in der Python- und Rust-Welt verbreitet ist: pyproject.toml beschreibt Python-Projekte, Cargo.toml Rust-Pakete, dazu kommen Werkzeuge wie Hugo, Poetry oder Ruff. Das Werkzeug wandelt TOML in JSON um, damit Sie die Struktur auf einen Blick sehen oder die Daten in Programmen weiterverarbeiten können. Auf Englisch heißt das „TOML to JSON“.

Der eingebaute Parser folgt TOML 1.0: Tabellen in eckigen Klammern, Arrays von Tabellen mit doppelten Klammern [[…]], Inline-Tabellen in geschweiften Klammern, Schlüssel mit Punkten wie a.b.c, Strings in allen vier Varianten ("…", '…', """…""" und '''…'''), Ganzzahlen mit Unterstrichen sowie hexadezimal, oktal und binär, Gleitkommazahlen und Wahrheitswerte. Datum und Uhrzeit gibt es in JSON nicht als eigenen Typ; sie erscheinen als Text im ISO-Format.

Gleichzeitig können Sie TOML prüfen: Doppelte Schlüssel, doppelt definierte Tabellen, nicht geschlossene Strings und Texte ohne Anführungszeichen werden mit Zeilennummer gemeldet. Die Werte inf und nan erscheinen als Text, weil JSON sie nicht kennt. Sehr große Ganzzahlen über 2^53 können in JSON-Programmen ungenau werden.

Anleitung: TOML in JSON in 4 Schritten

  1. Den Inhalt einer TOML-Datei, etwa pyproject.toml oder Cargo.toml, in das Feld „TOML“ einfügen oder „Beispiel“ laden.
  2. Unter „Einrückung“ zwischen 2 Leerzeichen, 4 Leerzeichen und minimiert wählen.
  3. Fehlermeldungen mit Zeilennummer prüfen, falls die Datei doppelte Schlüssel oder offene Strings enthält.
  4. Das JSON mit „Kopieren“ übernehmen.

Typische Anwendungsfälle

  • Konfiguration verstehen: Die verschachtelte Struktur einer pyproject.toml als JSON-Baum lesen.
  • TOML prüfen: Vor einem Commit Syntaxfehler in Cargo.toml oder einer Hugo-Konfiguration finden.
  • Daten weiterverarbeiten: TOML-Werte als JSON an ein Skript, ein Werkzeug wie jq oder eine API übergeben.
Fragen

Häufige Fragen

Welche TOML-Version wird unterstützt?

TOML 1.0 mit allen Datentypen. Datums- und Zeitwerte werden als Text ausgegeben, weil JSON keinen Datumstyp hat.

Was ist der Unterschied zwischen [tabelle] und [[tabelle]]?

Einfache Klammern definieren eine Tabelle (ein Objekt). Doppelte Klammern hängen bei jedem Vorkommen ein neues Objekt an ein Array an.

Warum meldet das Werkzeug einen doppelten Schlüssel?

In TOML darf jeder Schlüssel und jede Tabelle nur einmal definiert werden. Das gilt auch, wenn eine Tabelle vorher über Punkt-Schlüssel entstanden ist.

Muss Text in TOML immer in Anführungszeichen stehen?

Ja. Anders als in YAML gibt es keine Texte ohne Anführungszeichen; ein Wert wie hallo ohne Anführungszeichen ist ein Fehler.

Wie lese ich eine pyproject.toml in Python ein?

Ab Python 3.11 ist das Modul tomllib eingebaut: with open("pyproject.toml", "rb") as f: daten = tomllib.load(f). Die Datei muss im Binärmodus geöffnet werden.

Kann ich JSON wieder in TOML umwandeln?

Nicht mit diesem Werkzeug, es wandelt nur von TOML nach JSON. Beachten Sie beim umgekehrten Weg, dass TOML keinen Wert null kennt; solche Felder müssen weggelassen werden.

Weitere Werkzeuge

Das könnte auch helfen

Alle 358 Werkzeuge