JSON zu YAML

Fügen Sie JSON ein und erhalten Sie sauberes YAML zurück, korrekte Einrückung mit zwei Leerzeichen, Strings nur bei Bedarf in Anführungszeichen, mehrzeilige Werte als Block-Skalare dargestellt und optionale alphabetische Schlüsselsortierung. Nützlich zur Konvertierung von API-Antworten in Kubernetes-Manifeste, GitHub Actions-Konfigurationen oder jedes YAML-native Tool.

So konvertieren Sie JSON in YAML

  1. 1

    JSON einfügen

    Jedes gültige JSON. Der Konverter bewahrt die semantische Struktur exakt.

  2. 2

    Einrückung und Stil wählen

    2 oder 4 Leerzeichen, Flussstil für kompakte Arrays/Objekte oder Blockstil für lange Formen.

  3. 3

    Optional: Schlüssel sortieren

    Alphabetische Sortierung macht YAML einfacher zu vergleichen zwischen zwei Versionen.

  4. 4

    Das YAML kopieren

    In Ihre `.yaml` / `.yml`-Datei einfügen. Die Ausgabe ist gültiges YAML 1.2.

Beispiel

Eingabe:

{
  "name": "hyperion",
  "replicas": 3,
  "env": { "DEBUG": "false", "LOG_LEVEL": "info" },
  "command": ["php", "artisan", "queue:work"]
}

Ausgabe:

name: hyperion
replicas: 3
env:
  DEBUG: "false"
  LOG_LEVEL: info
command:
  - php
  - artisan
  - queue:work

Typzuordnung

JSON YAML
string ohne Anführungszeichen, in Anführungszeichen oder Block-Skalar nach Bedarf
integer 42
number 3.14
boolean true / false
null null (oder ~, oder leer)
array Blocksequenz mit - oder Fluss [...]
object Blockzuordnung mit key: value oder Fluss {...}

Wann Strings in Anführungszeichen gesetzt werden müssen

YAML interpretiert einige Strings automatisch als Nicht-Strings. Werte, die wie diese aussehen, benötigen Anführungszeichen:

Wert Warum Anführungszeichen benötigt werden
yes, no, on, off Als Booleans interpretiert (YAML 1.1 Kompatibilität)
null, Null, NULL Als null interpretiert
1.23 Als Zahl interpretiert
2026-04-18 Als Datum interpretiert
Vorne/hinten Leerzeichen Würde entfernt werden
Beginnt mit *, &, ! YAML-Direktiven

Der Konverter setzt diese automatisch in Anführungszeichen und lässt den Rest ohne Anführungszeichen für die Lesbarkeit.

YAML vs JSON Designunterschiede

  • Kommentare: YAML hat sie (#), JSON nicht.
  • Anker/Aliase: YAML unterstützt Querverweise (&anchor / *alias); JSON wiederholt die Daten. Die Konvertierung kann diese nicht ableiten; fügen Sie sie manuell hinzu, wenn Sie sie möchten.
  • Mehrzeilige Strings: YAML hat Block-Skalare (| bewahrt Zeilenumbrüche, > faltet sie). Der Konverter verwendet diese für lange Strings.
  • Null-Darstellung: YAML erlaubt null, ~ oder leer. Der Konverter gibt standardmäßig null aus.

Häufige Fehler

  • YAML 1.1 “Norwegen-Problem”. NO ohne Anführungszeichen ist boolean false in YAML 1.1. Die meisten modernen Parser sind YAML 1.2, wo nur true/false Booleans sind, aber einige Legacy-Tools haben immer noch Probleme.
  • Nachgestellte Leerzeichen in Werten. YAML bewahrt sie in Block-Skalaren, entfernt sie in einfachen Skalaren. Unerwartet, wenn Sie nicht wissen, welche Form Sie erhalten haben.
  • Tabs in der Einrückung. YAML verbietet Tab-Einrückungen. Verwenden Sie immer Leerzeichen.
  • Sehr lange einzeilige Strings. Brechen Sie sie in Block-Skalare für die Lesbarkeit; der Konverter macht dies automatisch über einen konfigurierbaren Schwellenwert hinaus.

Häufig gestellte Fragen

Strings, die wie andere YAML-Typen (Booleans, Zahlen, Daten, null) aussehen, benötigen Anführungszeichen, um als Strings zu bleiben. Strings mit Sonderzeichen (führende Leerzeichen, nicht druckbare Zeichen) benötigen ebenfalls Anführungszeichen. Der Konverter erkennt automatisch und setzt Anführungszeichen, wo nötig.

YAML 1.2 standardmäßig. Wenn Sie YAML 1.1-Kompatibilität benötigen (ältere Tools, einige CI-Systeme), aktivieren Sie “YAML 1.1-Kompatibilität” und der Konverter fügt zusätzliche Anführungszeichen für Werte hinzu, die unter 1.1 Booleans wären (yes, no, on, off).

Ja. Flussstil ([1, 2, 3] und { a: 1 }) ist verfügbar für kompakte Arrays und Objekte. Die meisten Konfigurationsdateien bevorzugen Blockstil für die Lesbarkeit.

Ja, mit einer Ausnahme: K8s YAML verlässt sich oft auf Kommentare und Anker, die JSON nicht ausdrücken kann. Konvertieren Sie die Datenstruktur und fügen Sie dann Kommentare / Anker manuell hinzu.

Verwandte Tools

Tool in anderen Sprachen verfügbar