入力
準備完了
行数: 0
単語数: 0
文字数: 0
サイズ: 0 KB
入力の統計は、このフィールド上部の統計ボタンから確認できます。
出力
行数: 0
単語数: 0
文字数: 0
サイズ: 0 KB
出力の統計は、このフィールド上部の統計ボタンから確認できます。
結果は情報提供のみを目的としており、誤りを含む場合があります。重要な情報は必ずご自身で確認してください。本ツールのご利用は自己責任でお願いいたします。
このツールでできること
YAMLからCSVへの変換ツールは、YAMLで書かれたレコードのリストを、表計算ソフトですぐに開けるCSVの行に変換します。リストの各項目が1行、各キーが1列になります。
入れ子のキーはアンダースコアでつないだ列名に展開され、meta: {tier: frontend}はmeta_tier列になります。列はすべてのレコードから集められるので、キーが1つ多い項目も切り捨てられず、専用の列が作られます。
こんなときに使えます
- 在庫リスト、サービスカタログ、テストケースの一覧がYAMLで管理されていて、誰かがExcelで確認する必要がある場合。
- 静的サイトジェネレーター、Ansibleのインベントリ、CI設定のデータを、レポート用の表に書き出す場合。
- 多数のYAMLレコードを並べて比較する場合。入れ子のテキストより列のほうがずっと見比べやすくなります。
- フィーチャーフラグ、ルート、翻訳の一覧を、表のほうが扱いやすい非エンジニアの同僚と共有する場合。
使用例
入力
- name: web
port: 8080
meta:
tier: frontend
- name: api
port: 3000
meta:
tier: backend
出力
name,port,meta_tier
web,8080,frontend
api,3000,backendこのツールについての質問
どのようなYAML構造を想定していますか?
最上位がマッピングのリスト(-で始まる行とキー: 値の組)になっている形が最適です。単一のマッピングは1行になります。結果がおかしい場合は、まずYAMLバリデーターでインデントを確認してください。
レコード内のリストはどう扱われますか?
単純な値のリストは1つのセルにまとめられます。オブジェクトのリストは他の入れ子データと同様に展開されるため、複雑な文書では列が多くなることがあります。
アンカーとエイリアスに対応していますか?
はい。YAMLのアンカー(&name)とエイリアス(*name)は解析時に展開されるため、CSVには参照記号ではなく完全な値が入ります。