Convertisseur YAML vers JSON
Collez du YAML à gauche, obtenez du JSON à droite. Tout s'exécute dans votre navigateur — pas d'envoi, pas d'inscription.
- Collez votre YAML dans la zone de texte de gauche.
- Cliquez sur « Convertir en JSON ». La sortie apparaît à droite.
- Copiez le résultat ou cliquez sur Télécharger pour sauvegarder comme data.json.
- Si la conversion échoue, le message d'erreur indique la ligne fautive.
Que fait-il ?
Convertit des documents YAML 1.2 en JSON équivalent. Les mappings deviennent des objets, les sequences deviennent des tableaux, les scalaires sont typés en nombres, booléens, nulls ou chaînes selon les règles YAML. Les anchors et aliases sont résolus pendant la conversion. Les flux multi-documents (séparés par `---`) sont aplatis en un tableau de documents.
Exemple
Entrée YAML :
name: Ada
tags:
- math
- logic
active: true Sortie JSON :
{
"name": "Ada",
"tags": [
"math",
"logic"
],
"active": true
} Erreurs YAML courantes et comment les corriger
YAML est sensible aux espaces, source de la plupart des messages « échec de parse ». Le parser indique la ligne et la colonne de l'échec — voici les motifs à rechercher.
- Tabulations au lieu d'espaces. YAML 1.2 interdit les tabulations pour l'indentation. Remplacez chaque tab par des espaces — la plupart des éditeurs ont une commande « convertir tabs en espaces ».
- Niveaux d'indentation mélangés. Un enfant indenté de 2 espaces sous un frère indenté de 4 espaces échouera. Choisissez une largeur d'indentation (généralement 2 espaces) et utilisez-la dans tout le document.
- Chaînes ressemblant à des booléens. En YAML 1.1, `yes`, `no`, `on`, `off` se parsent comme booléens — surprenant dans les codes pays (le piège « NO ») et chaînes de version. Encadrez la valeur de guillemets : `country: "NO"`. js-yaml utilise par défaut YAML 1.2 où c'est corrigé, mais les entrées réelles rencontrent encore le problème.
- Caractères spéciaux sans guillemets. Les valeurs commençant par `- `, `:`, `?`, `&`, `*`, `!`, `|`, `>`, `\'`, `"`, `%`, `@`, `` ` `` doivent être entre guillemets. Le motif le plus sûr : guillemetez toute chaîne avec ponctuation.
- Guillemet non terminé. Un `"` ou `\'` de fermeture manquant fait que le parser traite la suite du fichier comme partie de la chaîne jusqu'au prochain guillemet — produisant souvent un numéro de ligne confus loin de la vraie erreur.
- Anchor / alias non concordants. Des aliases (`*name`) référençant un anchor non défini (`&name`) lèvent une erreur de parse. Vérifiez que chaque alias a un anchor correspondant déclaré plus tôt dans le document.
Questions fréquentes
Cela supporte-t-il les bizarreries YAML 1.1 comme le « problème norvégien » ?
Non — et c'est intentionnel. Nous utilisons js-yaml en mode YAML 1.2, où un `NO` sans guillemets se parse comme la chaîne « NO » plutôt que le booléen false. Si vous avez des entrées qui dépendent des booléens YAML 1.1, mettez-les explicitement entre guillemets avant de coller. Mélanger les deux spécifications dans un seul outil traduirait silencieusement vos données.
Que deviennent les anchors et aliases YAML ?
Ils sont résolus pendant la conversion. Le JSON résultant contient les valeurs dupliquées comme données simples — les anchors ne survivent pas en JSON parce que JSON n'a pas de syntaxe de référence équivalente. Si vous avez besoin de préserver les références, JSON n'est pas le bon format cible.
Puis-je convertir des fichiers YAML multi-documents ?
Oui. Les fichiers YAML contenant plusieurs documents séparés par `---` sont convertis en tableau JSON, chaque document devenant un élément du tableau. Si votre fichier est un document unique, il est converti en un seul objet ou valeur JSON au niveau supérieur.
Pourquoi ma chaîne de date sort-elle au format ISO ?
YAML a un type timestamp natif (`2025-12-31`). Le parser le lit comme un Date JavaScript, qui se sérialise en JSON comme chaîne ISO 8601. Pour conserver le texte littéral original, mettez la valeur entre guillemets dans votre YAML : `release: "2025-12-31"`.
Est-ce sûr pour des configs YAML sensibles ?
Oui. Tout s'exécute dans votre navigateur — votre entrée est parsée et convertie par le JavaScript de cette page, jamais envoyée à un serveur. Pas de logs, pas d'analytics sur l'entrée elle-même, pas de rétention. Vérifiez dans les outils développeur : aucune requête réseau au clic sur Convertir.
Quelle taille de fichier YAML peut-il gérer ?
Jusqu'à la limite mémoire de votre navigateur, mais l'interface textarea devient lente au-delà d'environ 10 Mo de YAML. Pour des entrées plus grandes, convertissez par morceaux ou utilisez la même bibliothèque (js-yaml) en ligne de commande.