100 % lokal — Ihre Daten verlassen nie Ihren Browser

JSON in YAML — bereit für Ihre Konfiguration

JSON in YAML umwandeln. Einrückung nach Wahl, mehrdeutige Werte zitiert, und ein Ergebnis, das direkt in eine Compose- oder CI-Datei passt.

Sofort Privat Null Cookies
Einrückung

JSON-Eingabe

YAML-Ausgabe

Was dieses Werkzeug tut

YAML ist eine Obermenge von JSON, die Abbildung ist also direkt: Objekte werden Zuordnungen, Arrays werden Sequenzen, und jeder Skalar behält seinen Typ.

{ "name": "Ada", "tags": ["mathe", "motor"], "aktiv": true }
name: Ada
tags:
  - mathe
  - motor
aktiv: true

Zitiert, wo es sonst die Bedeutung änderte

{ "land": "NO", "flagge": "yes", "um": "12:30" }
land: "NO"
flagge: "yes"
um: "12:30"

Blank geschrieben würden diese drei von jedem YAML-1.1-Parser als falsch, wahr und 750 gelesen — und 1.1 setzt PyYAML um, mit dem ein sehr großer Teil der Welt YAML liest. Man nennt es das Norwegen-Problem, nach dem Ländercode, der immerfort zum Wahrheitswert wird.

Hier kommt der Wert aus JSON als Zeichenkette: keine Mehrdeutigkeit darüber, was er ist. Ihn zu zitieren ist die einzige Schreibweise, die ihn für jeden Leser eine Zeichenkette bleiben lässt. Echte Wahrheitswerte bleiben blank: true ist true.

Lange Kennungen behalten ihre Ziffern

{ "id": 12345678901234567890 }

kommt mit allen zwanzig Ziffern heraus. Die meisten Konverter parsen das JSON zuerst zu einem JavaScript-Wert, was jede Zahl durch eine Gleitkommazahl doppelter Genauigkeit schickt und alles jenseits von etwa fünfzehn Ziffern rundet — lautlos. Hier wird die Zahl als der Text gelesen, der sie ist.

Mehrzeilige Zeichenketten werden Block-Skalare

Eine Zeichenkette mit Zeilenumbrüchen wird in YAMLs lesbarer Blockform geschrieben statt mit \n:

beschreibung: |-
  erste Zeile
  zweite Zeile

Was nicht hinüberkommt

Kommentare und Anker. JSON hat beides nicht, es gibt also nichts zu tragen. Ein Konverter, der anböte, sie hinzuzufügen, erfände die Dokumentation Ihrer Datei — und das ist Arbeit für einen Menschen.

Datenschutz ab Werk

Alles läuft lokal in deinem Browser mit JavaScript. Deine Daten werden nie hochgeladen, wodurch das Tool auch für sensible Inhalte sicher ist und offline funktioniert.

Häufige Fragen

Warum steht mein Ländercode NO in Anführungszeichen?
Weil blankes `NO` für einen YAML-1.2-Leser die Zeichenkette `NO` ist und für einen 1.1-Leser der Wahrheitswert **falsch** — und PyYAML, das ein sehr großer Teil der Welt nutzt, setzt 1.1 um. Hier kommt der Wert als JSON-Zeichenkette an: wir wissen, was er ist, und Anführungszeichen sind die einzige Schreibweise, die ihn so lässt.
Überlebt meine 20-stellige ID?
Ja. Die Zahl wird als der Text gelesen, der sie ist, `12345678901234567890` kommt also mit allen zwanzig Ziffern heraus. Das ist nicht selbstverständlich: `JSON.parse` hätte sie zuvor auf `12345678901234567000` gerundet — so verlieren die meisten Konverter sie.
Kann ich Kommentare oder Anker in der Ausgabe bekommen?
Nein, und nichts könnte das. JSON hat weder das eine noch das andere, es gibt also nichts hinüberzutragen, und ein Konverter kann keinen Kommentar erfinden, den nie jemand geschrieben hat. Brauchen Sie eine dokumentierte YAML-Datei, schreiben Sie die Kommentare nach der Umwandlung und behalten Sie das YAML von da an als Quelle.

Ähnliche Konverter