Convertisseur JSON ↔ YAML
Convertissez JSON en YAML et YAML de nouveau en JSON directement dans votre navigateur. Collez l'un ou l'autre format pour obtenir une sortie propre et correctement indentée, idéale pour vos fichiers de configuration, pipelines CI et manifestes Kubernetes.
Indentation
Saisissez des données ci-dessus pour voir ici le résultat converti.
Comment utiliser Convertisseur JSON en YAML
- 1
Choisissez un sens
Utilisez le commutateur pour choisir JSON en YAML ou YAML en JSON. Le bouton d'inversion place votre résultat dans le champ de saisie afin que vous puissiez le reconvertir dans l'autre sens.
- 2
Collez vos données
Collez du JSON ou du YAML dans le champ de saisie. La conversion s'exécute automatiquement à mesure que vous tapez, en préservant la structure, l'imbrication et les types de données.
- 3
Choisissez l'indentation
Choisissez une indentation de 2 ou 4 espaces pour correspondre au style de votre projet. La sortie reste propre et correctement indentée dans l'un ou l'autre format.
- 4
Copiez le résultat
Vérifiez la sortie convertie et copiez-la dans votre presse-papiers, prête à être insérée dans un fichier de configuration, un pipeline ou votre code.
De JSON à YAML : une configuration plus propre, sans les pièges
YAML est un sur-ensemble de JSON
Tout document JSON valide est aussi du YAML valide — c'est une garantie de la spécification YAML, pas une coïncidence. YAML ajoute par-dessus une couche plus conviviale pour l'humain : au lieu d'accolades et de crochets, la structure s'exprime par l'indentation ; au lieu de virgules, les éléments occupent chacun leur propre ligne ; et contrairement à JSON, YAML prend en charge les commentaires. Le résultat se lit comme un plan plutôt que comme un déversement de données, ce qui explique pourquoi il domine les fichiers de configuration.
Parce que les modèles de données s'alignent si étroitement — les deux ont des maps, des séquences, des chaînes, des nombres, des booléens et null —, convertir de l'un à l'autre est mécanique et sans perte pour les valeurs elles-mêmes. La conversion réexprime le même arbre dans une syntaxe de surface différente. La seule chose qui ne peut pas survivre à un aller-retour vers JSON, ce sont les commentaires, puisque JSON n'a nulle part où les placer.
L'indentation est la syntaxe
En YAML, l'espace blanc n'est pas cosmétique — c'est la structure. L'imbrication se montre en indentant les clés enfants plus loin que leur parent, et les éléments à la même profondeur doivent partager la même indentation. Une map imbriquée sous une clé devient un ensemble de lignes indentées en dessous ; une liste devient des lignes commençant chacune par un tiret. Ratez l'indentation et vous changez le sens, pas seulement l'apparence, ce qui est l'inverse de la façon dont JSON traite l'espace blanc.
Choisissez une largeur d'indentation cohérente — deux espaces est la valeur par défaut courante pour les fichiers de configuration, quatre pour certaines conventions maison — et appliquez-la partout. Le convertisseur émet une indentation propre et uniforme, vous partez donc d'une base correcte plutôt que d'aligner les lignes à la main.
Les tabulations sont interdites
C'est la règle qui attrape presque tout le monde la première fois. La spécification YAML interdit explicitement les caractères de tabulation pour l'indentation ; vous devez utiliser des espaces. Un éditeur configuré pour insérer une tabulation lorsque vous appuyez sur la touche Tab produira silencieusement un fichier qui échoue à l'analyse, souvent avec un message d'erreur qui pointe au mauvais endroit parce que l'analyseur ne remarque que la structure est cassée qu'une ligne ou deux plus loin.
Si un fichier YAML refuse de se charger et que l'indentation paraît correcte, vérifiez d'abord les tabulations. Configurez votre éditeur pour afficher l'espace blanc ou pour convertir les tabulations en espaces pour les fichiers YAML. Convertir depuis JSON esquive entièrement ce problème, puisque la sortie générée est indentée avec des espaces dès le départ.
Le problème de la Norvège et autres booléens surprises
Les anciens analyseurs YAML interprètent comme des booléens un éventail saisissant de mots nus : non seulement true et false, mais aussi yes, no, on et off dans diverses capitalisations. Le désastre classique est une liste de codes de pays où l'entrée pour la Norvège, écrite sous les simples lettres n et o, est lue comme le booléen false et disparaît discrètement de vos données. Des indicateurs à bascule écrits on ou off peuvent changer de type de la même manière.
La parade, c'est la mise entre guillemets. Toute chaîne qui pourrait être prise pour un booléen, un nombre, une date ou null devrait être entourée de guillemets afin que l'analyseur la garde comme du texte. Les analyseurs modernes bâtis autour du schéma sûr sont plus stricts et bien moins enclins à cela, mais l'habitude de mettre entre guillemets les scalaires ambigus vaut la peine d'être conservée, en particulier pour les codes courts, les chaînes ressemblant à des versions et tout ce qui est fourni par l'utilisateur.
Autres pièges de scalaires : nombres, zéros de tête et null
Quelques autres valeurs nues surprennent. Un code postal ou un numéro de pièce avec un zéro de tête peut être lu comme un nombre et perdre le zéro, ou être interprété en octal dans certains analyseurs. Des chaînes de version comme 1.20 peuvent être converties en le nombre 1.2, laissant tomber le zéro final. Le mot null, une valeur vide et un tilde seul signifient tous null. Comme pour le piège des booléens, le remède est le même : mettez entre guillemets tout ce dont la forme textuelle importe.
Parce que cet outil analyse avec le schéma sûr, il ne charge que des types de données standard et ne construit jamais d'objets arbitraires ni n'exécute de code, de sorte que coller du YAML non fiable ne peut rien exécuter. Cela garde la conversion prévisible : ce que vous récupérez, ce sont de simples maps, séquences et scalaires, sans types personnalisés surprises introduits en douce via des tags.
Là où YAML vit réellement
La lisibilité de YAML en a fait la lingua franca de l'infrastructure et de l'outillage d'intégration continue. Les fichiers Docker Compose, les manifestes Kubernetes, les pipelines GitHub Actions et GitLab CI, les playbooks Ansible et d'innombrables fichiers de configuration d'applications sont tous en YAML. Dans chacun d'eux, les commentaires et les diffs propres que YAML autorise sont un véritable atout lorsqu'un humain doit relire une modification d'une configuration de production.
JSON, en revanche, reste plus adapté à l'échange de machine à machine via des API, où sa rigueur et l'absence de sensibilité à l'espace blanc réduisent l'ambiguïté. Un schéma courant consiste à rédiger et modifier en YAML pour le confort humain, puis à convertir en JSON quand un outil ou un point de terminaison l'exige — ce qui est précisément la raison pour laquelle ce convertisseur fonctionne dans les deux sens.
Style bloc, style flux et la lecture de la sortie
YAML peut exprimer les mêmes données de deux façons. Le style bloc étale les maps et les listes sur des lignes indentées et c'est ce que vous voulez pour une configuration lisible. Le style flux utilise des accolades et des crochets en ligne et ressemble presque exactement à du JSON, ce qui est parfois pratique pour des valeurs courtes et compactes intégrées dans un document plus vaste. Connaître les deux vous aide à lire sans confusion le YAML écrit par d'autres personnes.
Lorsque vous convertissez ici, collez le JSON, choisissez votre largeur d'indentation et relisez la sortie en style bloc avant de la déposer dans un dépôt. Tout se passe localement dans votre navigateur, de sorte que les secrets d'un fichier de configuration — jetons, chaînes de connexion, noms d'hôtes internes — ne quittent jamais votre appareil, ce qui rend sûr de convertir de vrais manifestes de déploiement plutôt que des exemples expurgés.
Questions fréquentes
Quelle est la différence entre JSON et YAML ?
Comment convertir du JSON en YAML ?
Peut-il reconvertir du YAML en JSON ?
Est-il sûr d'analyser ici du YAML non fiable ?
Mes données sont-elles envoyées à un serveur ?
Outils similaires
Continuez avec ces outils pratiques