// converters
YAML Flattener.
Flatten a nested YAML structure into dotted keys, or unflatten a flat dotted-key map back into nested form.
Input
Output
Questions fréquentes
Qu'est-ce que la notation pointillée ?
Elle transforme {a: {b: 1}} en a.b = 1.
Puis-je inverser l'aplatissement ?
Oui, l'outil peut reconstruire la structure hiérarchique.
Fonctionne-t-il avec les tableaux ?
Oui, les tableaux sont étendus avec des indices array.0, array.1.
Qu'est-ce que l'aplanissement YAML ?
L'aplanissement YAML convertit les structures YAML imbriquées en une représentation plate où les clés imbriquées sont connectées par des points ou des tirets bas. De { server: { host: localhost } } cela devient server.host: localhost.
Cette approche est particulièrement utile lorsque les valeurs de configuration de structures imbriquées doivent être transférées à des formats plats comme les variables d'environnement ou les fichiers .properties.
La structure plate conserve l'information sémantique sur la hiérarchie originale tout en éliminant la complexité de l'imbrication YAML.
Quand aplatir YAML ?
De nombreux outils et systèmes attendent des paires clé-valeur plates. Les variables d'environnement ne peuvent pas représenter l'imbrication, et les formats de configuration comme .properties travaillent également avec des clés plates.
Lors de la migration de YAML vers d'autres formats de configuration, l'aplanissement est une étape importante initiale. Il réduit la complexité et rend les données accessibles à d'autres systèmes.
Pour l'analyse de fichiers YAML, l'aplanissement peut aider à voir toutes les clés disponibles en un coup d'œil sans avoir à parcourir la structure.
Comment fonctionne la conversion ?
L'outil d'aplanissement parcourt la structure YAML récursivement et construit pour chaque valeur un chemin à partir des clés parentes. Ce chemin est utilisé comme la nouvelle clé plate.
Lors de la conversion, les types de données originaux sont préservés. Les chaînes, nombres, booléens et listes sont correctement conservés et ne sont pas convertis en chaînes.
Les conflits avec des chemins identiques sont résolus en écrasant les valeurs ou en les fusionnant comme des listes – selon l'option choisie.