Convertisseur JSON vers YAML - Conversion en ligne dans les deux sens
Convertir JSON en YAML et inversement
Convertir entre JSON et YAML
JSON et YAML décrivent les mêmes données — dictionnaires, listes, chaînes, nombres, booléens et null — dans deux syntaxes. JSON est la langue des API et des fichiers de paquets ; YAML celle des fichiers de configuration de Docker, Kubernetes, GitHub Actions et des pipelines CI. Ce convertisseur traduit l’un en l’autre instantanément et gère les détails qui font trébucher : guillemets, indentation et les mots étranges que YAML prend pour des booléens.
Étapes
- 1 Choisissez le sens et collez votre document dans la zone du haut. Le résultat apparaît en dessous au fil de la frappe.
- 2 Réglez la largeur d’indentation — 2 espaces est la convention en YAML et dans la plupart des guides de style JSON.
- 3 Copiez le résultat, téléchargez-le en fichier, ou utilisez la sortie comme nouvelle entrée pour vérifier l’aller-retour.
Ce qui change entre les deux formats
YAML supprime accolades, crochets et la plupart des guillemets et utilise l’indentation pour la structure : un objet JSON de 40 lignes devient un document YAML de 25 lignes. Les clés gardent leur ordre. Les listes deviennent des éléments à tiret, les objets imbriqués des blocs indentés ; un objet ou une liste vide reste écrit {} ou []. Dans l’autre sens, les commentaires YAML sont perdus car JSON n’en a pas.
Pourquoi certaines chaînes sortent entre guillemets
En YAML, un yes, no, on, off, true ou null sans guillemets est lu comme un booléen ou null, et 123 ou 1.0 comme un nombre. Une chaîne qui ressemble à l’un d’eux doit être entre guillemets, sinon elle change de type au retour — l’exemple classique est le code pays NO qui devient false. Le convertisseur met entre guillemets exactement ces chaînes, plus tout ce qui a des espaces en début ou fin, un deux-points suivi d’une espace ou un caractère spécial initial, et laisse le reste nu pour la lisibilité.
Chaînes multilignes
Une chaîne contenant des sauts de ligne est écrite comme un scalaire bloc YAML : une barre verticale sur la ligne de la clé et le texte indenté en dessous, avec un signe moins quand la chaîne n’a pas de saut de ligne final. C’est la forme que l’on voit dans les manifestes Kubernetes et les fichiers CI, et elle se relit en exactement la même chaîne.
Indentation et compatibilité
Le convertisseur écrit du YAML 1.2, lu par tous les analyseurs modernes — PyYAML, js-yaml, Go yaml, Ruby Psych. Les clés imbriquées sont indentées de la largeur choisie ; les clés d’un objet dans une liste se placent deux espaces après le tiret quoi qu’il arrive, comme l’exige la spécification. Les tabulations ne sont jamais utilisées.