Convertir YAML en JSON
Collez du YAML et récupérez du JSON, avec les ancres et les clés de fusion résolues et la ligne exacte de chaque erreur de syntaxe.
Fonctionne entièrement dans votre navigateur
- Entrée
- 0
- Sortie
- 0
- Variation
- 0%
Données jusqu'à environ 10 Mo. L'outil lit le YAML 1.2 avec les types standard uniquement ; les tags personnalisés comme !!python/object sont refusés, pas exécutés.
Comment convertir du YAML en JSON
- Collez votre YAML dans le champ, ou cliquez sur Insérer un exemple.
- Choisissez 2 espaces, 4 espaces, tabulations ou Minifier pour la mise en forme du JSON.
- Si le YAML contient une erreur de syntaxe, vous voyez sa ligne et sa colonne. Sinon, copiez le JSON ou téléchargez-le en fichier
.json.
Du YAML au JSON
Le YAML et le JSON décrivent le même type de données : des mappings, des listes et des valeurs simples. Le YAML est écrit par des humains, avec de l'indentation au lieu d'accolades, des commentaires et des raccourcis comme les ancres ; le JSON est ce qu'attendent la plupart des programmes et des API. Convertir du YAML en JSON est courant quand un manifeste Kubernetes, un fichier Compose ou une description OpenAPI doit être fourni à un outil qui ne lit que le JSON.
Certaines fonctions du YAML n'ont pas d'équivalent en JSON : le convertisseur les résout donc. Une ancre (&base) marque un bloc qu'un alias (*base) peut réutiliser, et une clé de fusion (<<) copie les entrées d'un mapping dans un autre ; en JSON, chacun devient une copie complète. Les commentaires sont supprimés, car le JSON ne peut pas les contenir. Un fichier avec plusieurs documents séparés par --- devient un tableau JSON.
Les règles de types suivent YAML 1.2 : true et false sont des booléens, null et ~ valent null, les nombres sont des nombres, et tout le reste, y compris yes et 2024-05-01, est du texte. Les erreurs de syntaxe indiquent une ligne et une colonne ; les causes les plus fréquentes sont une tabulation utilisée pour l'indentation, une clé répétée dans le même mapping et une valeur non indentée sous sa clé.
Conseils
- Besoin de l'inverse ? Convertir JSON en YAML met entre guillemets les valeurs comme « yes » pour qu'elles survivent à l'aller-retour.
- Vérifiez ou mettez en forme le résultat avec Formater et valider du JSON.
- Vous avez plutôt des données en tableau ? CSV en JSON s'occupe des tableurs.
Questions fréquentes
Mon YAML est-il envoyé en ligne ?
Non. L'analyseur YAML est chargé depuis ce site la première fois que vous collez quelque chose et s'exécute dans votre navigateur. Une configuration contenant des mots de passe ou des clés n'est envoyée nulle part.
Pourquoi yes reste-t-il le texte « yes » ?
Cet outil suit YAML 1.2, où seuls true et false sont des booléens. Les mots yes, no, on et off restent des chaînes, ce qui évite le fameux « problème norvégien », où le code pays NO devient false avec les analyseurs YAML 1.1. Si votre programme utilise un analyseur YAML 1.1, il peut lire ces mots différemment.
Que deviennent les dates et horodatages ?
Une valeur comme 2024-05-01 est gardée sous forme de chaîne « 2024-05-01 ». Le JSON n'a pas de type date, et la convertir en nombre ou dans un autre format ferait perdre de l'information.
Et les très grands entiers ?
Les entiers au-delà de 9 007 199 254 740 991 (253 - 1) sont écrits chiffre par chiffre au lieu d'être arrondis : un identifiant comme 12345678901234567890 est donc préservé. Sachez qu'un programme qui lit ensuite le JSON avec des nombres JavaScript ordinaires l'arrondira.
Les ancres, alias et clés de fusion sont-ils pris en charge ?
Oui. Les ancres &nom et les alias *nom sont développés, et <<: *nom fusionne un mapping dans un autre. Comme le JSON n'a pas de références, chaque alias est écrit en entier.
Qu'est-ce que la limite d'alias et le plafond de 20 Mo ?
Un petit fichier YAML peut utiliser des alias qui se développent en quelque chose d'énorme : c'est ce qu'on appelle une bombe d'alias. Les fichiers de plus de 10 000 alias sont refusés, et la conversion s'arrête si le JSON dépasse 20 Mo, pour que votre onglet ne se fige pas.