Convertir JSON en YAML
La conversion de fichiers de configuration JSON au format YAML transforme des structures de données rigides destinées aux programmes en documents clairs et lisibles par l'homme, beaucoup plus faciles à modifier pour les administrateurs système.
Comparaison des formats et spécifications techniques
| Spécification | JSON | YAML |
|---|---|---|
| Type MIME | application/ | text/ |
| Type | objet de données structuré | sérialisation de données lisible par l’utilisateur |
| Compression | aucun (flux de texte) | aucun (texte UTF-8) |
| Spécification standard | IETF RFC 8259 / ECMA-404 | YAML 1.2 Specification |
| Signature binaire (octets magiques) | 7B (\{) or 5B (\[) JSON root delimiter | 2D 2D 2D (--- YAML document start marker) or key: value |
Aperçu du format et applications
Les manifestes Kubernetes, les playbooks Ansible et de nombreux fichiers Docker Compose utilisent une configuration YAML. Convertissez le JSON lorsque l’outil cible attend du YAML, puis validez le schéma requis et la version de l’API avant d’appliquer le fichier.
Spécifications techniques et analyse des codecs
La configuration JSON (application/json) représente des données structurées dans un flux de texte UTF-8 ou ASCII non compressé et exige des guillemets doubles pour les clés et les chaînes. La configuration YAML (application/yaml) est un format de sérialisation de données conçu pour être lisible. Aucun des deux formats ne comporte d’en-tête binaire magique : leur structure est analysée comme du texte. Ils prennent en charge les mêmes types de données de base (chaînes, nombres, booléens, tableaux et dictionnaires), et la conversion conserve donc l'intégralité des valeurs de données.
Compatibilité système et navigateur
Les fichiers JSON et YAML sont des formats textuels compatibles avec tous les systèmes d'exploitation modernes, y compris Windows, macOS, Linux, iOS et Android. Les navigateurs web modernes peuvent lire les deux formats de manière native sous forme de texte brut, bien qu'ils nécessitent des bibliothèques JavaScript telles que js-yaml pour analyser le YAML en objets utilisables. La prise en charge varie aussi selon l’application, l’appareil, le système d’exploitation et sa version.
Informations utiles
Validez toujours vos espaces d'indentation après avoir converti du JSON en YAML. Le mélange de tabulations et d'espaces dans un fichier YAML provoquera des erreurs d'analyse dans votre analyseur de configuration.
Foire aux questions
Comment convertir une configuration JSON en configuration YAML sans perte de qualité ?
Le convertisseur transforme les valeurs JSON prises en charge en YAML, mais les analyseurs YAML peuvent interpréter les scalaires différemment et certaines fonctions YAML n’ont pas d’équivalent en JSON. Vérifiez le résultat avec l’analyseur cible, en particulier pour les dates, les booléens et les nombres.
Quelle est la différence entre la configuration JSON et la configuration YAML ?
Le JSON est un format d'échange de données strict qui utilise des accolades, des crochets et des guillemets doubles pour définir des objets et des tableaux. Le YAML est une extension du JSON qui utilise l'indentation, des sauts de ligne et des tirets optionnels pour créer une structure de document plus propre et plus lisible.