JSON naar YAML converter
Zet JSON in één stap om naar leesbare YAML.
Draait in je browser. Niets van wat je typt wordt ergens naartoe gestuurd.
- Behoudt nesting en types
- Converteert terwijl je typt
- Niets wordt geüpload
Zo converteer je JSON naar YAML
- Plak of upload je JSON.
- De YAML verschijnt terwijl je typt.
- Kopieer hem of download het .yaml-bestand.
Wat er verandert van JSON naar YAML
- Accolades en komma's verdwijnen. Inspringing toont de structuur in plaats daarvan.
- Eigenschapsnamen verliezen hun aanhalingstekens, tenzij een naam een teken bevat dat YAML tussen aanhalingstekens moet zetten, zoals een dubbele punt.
- Een JSON-array wordt een lijst van regels met streepjes, één per item, ingesprongen onder zijn sleutel.
- true, false en null worden in beide formaten met hetzelfde woord geschreven.
Waarom sommige YAML-waarden hun aanhalingstekens houden
| JSON-waarde | Geschreven als | Reden |
|---|---|---|
| "007" | '007' | Kaal 007 zou als het getal 7 worden gelezen |
| "yes" | 'yes' | Sommige YAML-lezers behandelen kaal yes of no als een boolean |
| "null" | 'null' | Kaal null zou als de null-waarde worden geparsed |
| "2024-01-01" | '2024-01-01' | Kale datums worden bij sommige lezers een datumtype |
Waar YAML wordt gebruikt
- Docker Compose-bestanden
- Kubernetes-manifesten
- Workflowbestanden van GitHub Actions
- Ansible-playbooks
Waar JSON naar YAML bij helpt
- Een geëxporteerd instellingenbestand omzetten naar het configformaat dat je deploytool echt leest.
- Een API-respons makkelijker scanbaar maken voordat je twee versies ervan met elkaar vergelijkt.
- Een values-bestand opstellen voor een Helm-chart of vergelijkbare tool vanuit bestaande JSON-data.
Veelgestelde vragen over JSON naar YAML
Waarom YAML gebruiken in plaats van JSON?
YAML laat de meeste haakjes en aanhalingstekens weg en gebruikt inspringing in plaats daarvan, waardoor configbestanden voor tools zoals Docker Compose, Kubernetes en GitHub Actions makkelijker met de hand te lezen en bewerken zijn.
Waarom staan sommige waarden tussen aanhalingstekens?
Strings die YAML anders als iets anders zou lezen, houden hun aanhalingstekens. Zo blijft '007' tekst in plaats van het getal 7 te worden, en blijft 'yes' een string.
Kan ik commentaar toevoegen aan de YAML?
JSON heeft geen commentaar, dus er is niets om over te nemen. Je kunt zelf commentaar toevoegen met een # na het converteren.
Welk YAML-dialect schrijft dit?
Standaard YAML 1.2, geproduceerd door js-yaml, dezelfde bibliotheek die veel Node.js-buildtools gebruiken om configbestanden te lezen en te schrijven.
Behoudt het de volgorde van sleutels?
Ja. Sleutels worden in dezelfde volgorde geschreven als waarin ze in het JSON-object voorkomen, zodat een diff tussen de twee makkelijk te volgen blijft.
Kan ik een JSON-array op het hoogste niveau converteren?
Ja. Een array op het hoogste niveau wordt een YAML-sequence van items met streepjes in plaats van een mapping van sleutels en waarden.
Verwerkt het diep geneste objecten en arrays van objecten?
Ja. Nesting van elke diepte wordt correct omgezet, waarbij elk niveau 2 spaties verder inspringt dan zijn ouder, de standaardstijl van js-yaml.
Wat gebeurt er met een waarde die een dubbele punt bevat, zoals een tijd of een URL?
De hele waarde wordt tussen aanhalingstekens gezet, aangezien een dubbele punt zonder aanhalingstekens gevolgd door een spatie er anders uit zou zien als het begin van een nieuwe sleutel.