JSON zu YAML Konverter
Fügen Sie JSON links ein, erhalten Sie sauberes YAML 1.2 mit konsistenter Einrückung rechts. Läuft in Ihrem Browser — kein Upload.
- Fügen Sie JSON in den linken Textbereich ein.
- Klicken Sie auf „In YAML umwandeln". Die YAML-Ausgabe erscheint rechts.
- Kopieren Sie das Ergebnis oder klicken Sie auf Herunterladen, um als data.yaml zu speichern.
- Wenn das JSON ungültig ist, zeigt die Fehlermeldung auf die fehlerhafte Position.
Was macht es?
Konvertiert JSON in äquivalentes YAML 1.2. Objekte werden zu Mappings, Arrays zu Sequenzen, und Zahlen/Booleans/null/Strings behalten ihren Typ. Die Ausgabe verwendet standardmäßig 2-Leerzeichen-Einrückung und 100-Spalten-Zeilenbreite. Round-Trip JSON → YAML → JSON liefert semantisch identische Daten, obwohl Kommentare und Ordnungsnuancen JSON-seitige Einschränkungen sind, die zu beachten sind.
Beispiel
JSON-Eingabe:
{"name":"Ada","tags":["math","logic"],"active":true} YAML-Ausgabe:
name: Ada
tags:
- math
- logic
active: true Häufige JSON-Fehler und wie man sie behebt
JSON muss gültig sein, bevor dieses Tool es in YAML konvertieren kann. Der Parser zeigt Zeile und Spalte jedes Fehlers — diese Muster verursachen fast jeden „ungültiges JSON"-Fehler.
- Trailing-Komma. `{"a": 1, "b": 2,}` ist ungültig. JSON erlaubt kein Komma nach dem letzten Element eines Objekts oder Arrays.
- Einfache Anführungszeichen. `{'a': 1}` ist ungültig. JSON-Strings und -Schlüssel müssen doppelte Anführungszeichen verwenden.
- Schlüssel ohne Anführungszeichen. `{a: 1}` ist ungültig — JavaScript-Objekt-Literale erlauben das, JSON nicht. Setzen Sie den Schlüssel in doppelte Anführungszeichen.
- Kommentare. // oder /* */ Kommentare sind in striktem JSON nicht erlaubt. Entfernen Sie sie vor der Konvertierung oder verwenden Sie die YAML-Ausgabe (die # Kommentare unterstützt) und fügen Sie halb-manuell ein.
- Smart Quotes. Kopieren-Einfügen aus Textverarbeitung ersetzt manchmal " durch geschwungene Anführungszeichen — JSON lehnt diese ab. Neu tippen oder über einen Klartext-Editor einfügen.
- NaN / Infinity. JSON hat keine Darstellung für NaN, Infinity oder -Infinity. Falls Ihre Daten diese enthalten, wählen Sie: als null serialisieren (Informationsverlust) oder als String „NaN" (Absicht erhalten, aber Typ ändern).
Häufig gestellte Fragen
Warum hat meine YAML-Ausgabe keine Kommentare?
JSON hat keine Kommentar-Syntax, also gibt es keine Kommentare zu übertragen. Wenn Sie kommentiertes YAML wollen, bearbeiten Sie die Ausgabe nach der Konvertierung von Hand. Manche Teams kodieren Kommentare als `_comment`-Feld in JSON, aber die werden in YAML zu normalen Schlüsseln — keine echten Kommentare.
Wird meine Schlüsselreihenfolge erhalten?
Ja. Die Schlüsselreihenfolge eines JSON-Objekts wird als YAML-Mapping-Reihenfolge erhalten — wie JSON.parse + JSON.stringify in modernen Browsern, die Einfügereihenfolge bewahren. Für alphabetische Sortierung sortieren Sie das JSON zuerst.
Wie werden tief verschachtelte Strukturen formatiert?
YAML-Ausgabe verwendet 2-Leerzeichen-Einrückung pro Ebene, mit Sequenzen im Blockstil (ein Element pro Zeile, mit `-` als Präfix). Leere Objekte und Arrays werden als `{}` bzw. `[]` gerendert — Flow-Stil, da Blockstil für leer mehrdeutig wäre.
Unterstützt das Binärdaten?
JSON hat keinen nativen Binärtyp, also sind Binärdaten typischerweise schon als base64-String in der Eingabe kodiert. Die YAML-Ausgabe erhält diesen String. Wenn Sie tatsächlich das YAML-Binärformat (`!!binary`) brauchen, erzeugt die Konvertierung das nicht — bleiben Sie beim base64-String-Ansatz.
Ist das sicher für sensibles JSON wie API-Schlüssel?
Ja. Alles läuft in Ihrem Browser. Ihre Eingabe wird durch JavaScript auf dieser Seite geparst und konvertiert; kein Server wird kontaktiert. Verifizieren Sie es in den Browser-Entwicklertools — null Netzwerkanfragen beim Klick auf Umwandeln.
Kann ich JSON → YAML → JSON Round-Trip machen?
Für Daten ja — Semantik bleibt erhalten. Für genau byte-äquivalenten Text nein — Whitespace und Quoting werden normalisiert. Wenn Sie eine stabile kanonische Form brauchen, führen Sie JSON.stringify mit sortierten Schlüsseln vor dem Einfügen aus.