Alle tools draaien in je browser — je bestanden verlaten nooit je apparaat.
All tools154

Hulpmiddelen

YAML en JSON omzetten

Heen en weer omzetten tussen YAML en JSON.

Wat het doet. Deze tool zet YAML om naar JSON en omgekeerd. YAML gebruikt inspringing om structuur aan te geven, en dat is precies waar het misgaat — één tab in plaats van spaties maakt een bestand ongeldig.
Draait in je browserNiets wordt geüploadGeen accountWerkt offline

Hoe je dit gebruikt YAML en JSON omzetten

  1. Plak YAML of JSON; het formaat wordt herkend.
  2. Bekijk het resultaat of de foutmelding met regelnummer.
  3. Kopieer de uitkomst.

Inspringen met spaties, nooit met tabs

De belangrijkste regel in YAML, en de meest voorkomende fout.

YAML staat geen tabs toe voor inspringing. Alleen spaties. Een editor die stilletjes tabs invoegt, levert een bestand op dat er goed uitziet en niet werkt.

De foutmelding is bovendien vaak misleidend: hij wijst naar een regel verderop, waar de structuur pas echt vastloopt.

Zet in je editor „tabs omzetten naar spaties" aan, en maak zichtbare witruimte aan als je vaak met YAML werkt.

Twee spaties per niveau is de gangbare conventie. Belangrijker dan het aantal is dat je consequent bent binnen een bestand.

Waarden die je niet bedoelde

YAML raadt het type van een waarde, en dat gaat op een paar plekken tegen je in.

Waarden als „yes", „no", „on" en „off" worden in oudere YAML-versies als booleaanse waarden gelezen. Een landcode „NO" voor Noorwegen wordt dan het getal onwaar. Zet zulke waarden tussen aanhalingstekens.

Getallen met voorloopnullen kunnen als octaal worden gelezen. Een versienummer of een postcode hoort tussen aanhalingstekens.

Een tijd als 12:30 kan als iets anders dan tekst worden opgevat. Ook hier: aanhalingstekens.

Vuistregel: alles wat een identificatie is in plaats van een berekenbare waarde, zet je tussen aanhalingstekens.

Wanneer welk formaat

YAML is prettiger om met de hand te schrijven en te lezen: minder haakjes, ondersteuning voor commentaar, en meerregelige tekst zonder ontsnappingstekens.

JSON is strikter en daardoor betrouwbaarder voor uitwisseling tussen systemen. Geen commentaar, geen inspringingsafhankelijkheid, minder manieren om iets verkeerd te interpreteren.

In de praktijk: configuratie die mensen bewerken in YAML, gegevens die tussen systemen gaan in JSON.

Let op één ding bij het omzetten: commentaar in YAML gaat verloren bij de stap naar JSON, want JSON kent geen commentaar. Dat is niet terug te halen.

Alles gebeurt in deze pagina.

Veelgestelde vragen

Waarom is mijn YAML ongeldig?

Meestal een tab in plaats van spaties. YAML staat geen tabs toe voor inspringing.

Waarom wordt NO onwaar?

Oudere YAML leest yes, no, on en off als booleaanse waarden. Zet ze tussen aanhalingstekens.

Hoeveel spaties per niveau?

Twee is gangbaar. Consequent zijn is belangrijker dan het aantal.

Blijft mijn commentaar behouden?

Niet bij omzetten naar JSON. Dat kent geen commentaar.

Welk formaat kies ik?

YAML voor configuratie die mensen bewerken, JSON voor uitwisseling tussen systemen.

Wordt mijn bestand verstuurd?

Nee.