YAML zu JSON Konverter

Fügen Sie YAML links ein, erhalten Sie JSON rechts. Läuft vollständig in Ihrem Browser — kein Upload, keine Anmeldung.

  1. Fügen Sie Ihr YAML in den linken Textbereich ein.
  2. Klicken Sie auf „In JSON umwandeln". Die Ausgabe erscheint rechts.
  3. Kopieren Sie das Ergebnis oder klicken Sie auf Herunterladen, um als data.json zu speichern.
  4. Wenn die Konvertierung fehlschlägt, zeigt die Fehlermeldung auf die fehlerhafte Zeile.
Was macht es?

Konvertiert YAML-1.2-Dokumente in äquivalentes JSON. Mappings werden zu Objekten, Sequenzen zu Arrays, Skalare werden gemäß YAML-Regeln als Zahlen, Booleans, Nulls oder Strings typisiert. Anchors und Aliases werden während der Konvertierung aufgelöst. Multi-Dokument-Streams (durch `---` getrennt) werden zu einem Array von Dokumenten abgeflacht.

Beispiel

YAML-Eingabe:

name: Ada
tags:
  - math
  - logic
active: true

JSON-Ausgabe:

{
  "name": "Ada",
  "tags": [
    "math",
    "logic"
  ],
  "active": true
}

Häufige YAML-Fehler und wie man sie behebt

YAML ist whitespace-empfindlich, was die Quelle der meisten „Parse fehlgeschlagen"-Meldungen ist. Der Parser zeigt Zeile und Spalte des Fehlers — diese Muster sollten Sie suchen.

  • Tabs statt Leerzeichen. YAML 1.2 verbietet Tabs für Einrückung. Ersetzen Sie jeden Tab durch Leerzeichen — die meisten Editoren haben den Befehl „Tabs in Leerzeichen umwandeln".
  • Gemischte Einrückungsebenen. Ein Kind mit 2 Leerzeichen Einrückung unter einem Geschwister mit 4 Leerzeichen wird scheitern. Wählen Sie eine Einrückungsbreite (in der Regel 2 Leerzeichen) und verwenden Sie sie konsistent im gesamten Dokument.
  • Strings, die wie Booleans aussehen. In YAML 1.1 werden `yes`, `no`, `on`, `off` als Booleans geparst — überraschend bei Ländercodes (die „NO"-Falle) und Versionsstrings. Setzen Sie den Wert in Anführungszeichen: `country: "NO"`. js-yaml verwendet standardmäßig YAML 1.2, wo das behoben ist, aber reale Eingaben treffen das Problem trotzdem.
  • Sonderzeichen ohne Anführungszeichen. Werte, die mit `- `, `:`, `?`, `&`, `*`, `!`, `|`, `>`, `\'`, `"`, `%`, `@`, `` ` `` beginnen, müssen in Anführungszeichen gesetzt werden. Sicherstes Muster: Setzen Sie jeden String mit Interpunktion in Anführungszeichen.
  • Nicht geschlossenes Anführungszeichen. Ein fehlendes schließendes `"` oder `\'` lässt den Parser den Rest der Datei bis zum nächsten Anführungszeichen als Teil des Strings behandeln — produziert in der Regel eine verwirrende Zeilennummer weit weg vom eigentlichen Fehler.
  • Anchor / Alias-Mismatch. Aliases (`*name`), die einen undefinierten Anchor (`&name`) referenzieren, lösen einen Parse-Fehler aus. Prüfen Sie, dass jedes Alias einen passenden Anchor hat, der früher im Dokument deklariert wurde.
Häufig gestellte Fragen

Unterstützt das YAML-1.1-Eigenheiten wie das „Norwegen-Problem"?

Nein — und das ist Absicht. Wir verwenden js-yaml im YAML-1.2-Modus, wo unzitiertes `NO` als String „NO" und nicht als Boolean false geparst wird. Wenn Sie Eingaben haben, die von YAML-1.1-Booleans abhängen, setzen Sie sie vor dem Einfügen explizit in Anführungszeichen. Beide Spezifikationen in einem Tool zu mischen würde Ihre Daten still falsch übersetzen.

Was passiert mit YAML-Anchors und -Aliases?

Sie werden während der Konvertierung aufgelöst. Das resultierende JSON enthält die duplizierten Werte als einfache Daten — Anchors überleben nicht in JSON, weil JSON keine äquivalente Referenzsyntax hat. Wenn Sie Referenzen erhalten müssen, ist JSON nicht das richtige Zielformat.

Kann ich Multi-Dokument-YAML-Dateien konvertieren?

Ja. YAML-Dateien, die mehrere durch `---` getrennte Dokumente enthalten, werden in ein JSON-Array konvertiert, wobei jedes Dokument zu einem Element des Arrays wird. Wenn Ihre Datei ein einzelnes Dokument ist, wird sie zu einem einzelnen JSON-Objekt oder -Wert auf oberster Ebene konvertiert.

Warum kommt mein Datums-String im ISO-Format heraus?

YAML hat einen nativen Timestamp-Typ (`2025-12-31`). Der Parser liest ihn als JavaScript-Date, das beim Serialisieren zu JSON als ISO-8601-String wird. Um den ursprünglichen Literaltext beizubehalten, setzen Sie den Wert in Ihrem YAML in Anführungszeichen: `release: "2025-12-31"`.

Ist das sicher für sensible YAML-Konfigs?

Ja. Alles läuft in Ihrem Browser — Ihre Eingabe wird vom JavaScript dieser Seite geparst und konvertiert, nicht an einen Server gesendet. Keine Logs, keine Analytics über die Eingabe selbst, keine Aufbewahrung. Verifizieren Sie es in den Browser-Entwicklertools: null Netzwerkanfragen beim Klick auf Umwandeln.

Wie groß darf die YAML-Datei sein?

Bis zur Speichergrenze Ihres Browsers, aber das Textarea-UI fühlt sich oberhalb von ca. 10 MB YAML träge an. Für größere Eingaben in Stücken konvertieren oder die gleiche Bibliothek (js-yaml) auf der Kommandozeile verwenden.