🌐 FR

🔄 Convertisseur YAML ↔ JSON / CSV

Convertissez le YAML et le JSON dans les deux sens. Utile pour transformer des fichiers de configuration (docker-compose, GitHub Actions, manifests k8s) en JSON afin de les inspecter par programme, ou pour convertir du JSON en YAML lisible par l'humain. L'onglet JSON↔CSV convertit des données de tableau plat en CSV prêt pour tableur.

GUIDE

En savoir plus

01

1. Quand utiliser YAML plutôt que JSON

JSON est optimisé pour l'échange de données machine à machine (réponses d'API, configurations enregistrées) — sa grammaire stricte réduit les surprises lors de l'analyse. YAML repose sur l'indentation, prend en charge les commentaires (#) et est plus lisible pour les humains, c'est pourquoi il est largement utilisé dans les fichiers de configuration : docker-compose.yml, workflows GitHub Actions, manifests Kubernetes, playbooks Ansible. Utilisez cet outil pour convertir une configuration YAML en JSON afin de la traiter par programme, ou pour transformer des données JSON en YAML propre et lisible.

02

2. Précautions de conversion

YAML peut exprimer plus que JSON : ancres (&), alias (*), séparateurs de documents multiples (---) et scalaires en bloc (| et >). La conversion d'un document qui utilise ces éléments vers JSON transforme les ancres/alias en leurs valeurs littérales, et seul le premier document sur plusieurs est converti. JSON→YAML est toujours sûr, car JSON est pratiquement un sous-ensemble de YAML. Faites attention aux chaînes ressemblant à des nombres (par ex. un code postal "01234") : sans guillemets, YAML peut les interpréter comme des nombres.

03

3. JSON ↔ CSV et structures imbriquées

Le CSV ne peut représenter qu'un tableau (lignes et colonnes), il ne peut donc pas contenir directement les objets/tableaux imbriqués de JSON. Cet outil aplatit automatiquement les objets imbriqués en colonnes en notation à points comme « user.name », « user.age », et CSV→JSON reconstruit la structure imbriquée d'origine à partir de ces en-têtes en notation à points. Les valeurs de tableau (p. ex. une liste de balises) sont stockées comme une chaîne JSON brute dans la cellule — il est plus sûr de faire un aller-retour avec l'outil que d'éditer à la main dans un tableur.

Questions fréquentes

Quelle syntaxe YAML est prise en charge ?
Nous utilisons la bibliothèque js-yaml, qui prend en charge la syntaxe YAML 1.2 standard (mappings, sequences, scalaires, commentaires, ancres/alias, scalaires en bloc, plusieurs types de données), couvrant la majorité des syntaxes de fichiers de configuration du monde réel.
Que devient un objet imbriqué en JSON→CSV ?
Ils sont automatiquement aplanis en colonnes de notation à points "parent.enfant". Par exemple, {"user":{"name":"Kim"}} devient une colonne "user.name" contenant "Kim".
Puis-je convertir en CSV un JSON contenant des tableaux ?
Le niveau supérieur doit être un tableau d'objets (p. ex. [{"a":1}]). Les valeurs de tableau à l'intérieur de chaque objet (p. ex. une liste de balises) sont stockées comme une chaîne JSON brute dans la cellule.
Mes données sont-elles envoyées à un serveur ?
Non. Toute la conversion se fait entièrement dans votre navigateur (JavaScript) ; rien de ce que vous saisissez n'est envoyé à un serveur.