Cookie の使用について.本サイトでは、基本機能の提供に必要な必須 Cookie を使用しています。さらに、同意いただいた場合に限り、アクセス解析 Cookie を利用して利用状況を把握し、サービス改善に役立てます。詳しくは .
このツールは使いやすかったですか?
フィードバックは改善に役立ちます
实现YAML与CSV格式互转,支持自定义表头、分隔符等参数,高效处理结构化数据
概要
解決できる課題、処理の仕組み、データの範囲を確認できます。
YAMLは、キーと値の対応(マッピング)、順序のある項目列(シーケンス)、単独の値(スカラー)を組み合わせてデータを表します。CSVは、各レコードを行、各フィールドを列として扱うテキスト形式です。この変換は、項目名がそろった複数レコードを表計算ソフトなどで確認したいときに役立ちます。
たとえば、YAMLのシーケンスに「名前」と「点数」を持つマッピングが並んでいれば、名前と点数を列、各マッピングをデータ行として整理できます。逆方向ではCSVの先頭行を列名として読み、後続行をレコードにしたYAMLを作ります。
- 名前: 林
点数: 92
- 名前: 周
点数: 87この例は「名前,点数」を列見出しとする2行の表に対応します。形式の考え方はYAML 1.2.2仕様のシーケンス・マッピングと、RFC 4180のCSVレコード・フィールドの説明に基づきます。
使い方
手順に沿って操作し、例を使って入力と結果を確認します。
初期状態はYAMLからCSVです。CSVからYAMLにしたい場合は形式を入れ替える操作を使い、入力欄と出力欄に表示された形式を確認します。
YAMLから始める場合は、同じ種類の項目を持つレコードのシーケンスを用意します。CSVから始める場合は、1行目に列名を置き、2行目以降に値を並べます。列名は空欄や重複を避け、各行の列数をそろえてください。
入力欄へテキストを貼り付けると結果が表示されます。列名、行数、値の対応を確認してからコピーまたはダウンロードします。変換方向を逆にするときも、出力されたテキストを新しい入力として確認してください。
このページでは区切り文字やヘッダーの有無を個別に指定する欄はありません。CSVはカンマ区切り、先頭行をヘッダーとして扱う前提で入力を準備します。
活用例
仕事や日常の流れの中での活用方法を紹介します。
開発者が、同じ項目を持つ設定レコードをYAMLで管理している場合、CSVにして列ごとに値を比較できます。編集後のCSVをYAMLに戻すときは、数値や真偽値が意図した値として扱われるか確認してください。
データ担当者が列名付きCSVを受け取り、各行をYAMLのレコードとして扱いたい場合に使えます。出力を後続の設定や処理へ渡す前に、列名と空欄の扱いを読み手側の仕様と照合します。
Q&A
よくある疑問や迷いやすい点をまとめて確認できます。
先頭行は列名として扱われ、データ行には含まれません。1行目も値の一部であるファイルは、そのまま使うと列名がずれるため、変換前に列名の行を用意してください。
そのままの形では残りません。CSVは行と列の表なので、階層データやYAMLコメントを完全に表現できません。必要な項目を平らなレコードに整えてから変換し、元のYAMLも保管してください。
あります。CSVからYAMLにする処理では、数字や真偽値らしい文字列を型として読み取る場合があります。識別番号や先頭ゼロが重要な列は、出力後に値を確認し、必要なら入力データ側で文字列として表現してください。
注意
利用範囲、結果の制限、必要な注意点を事前に確認します。
YAMLとCSVは表現できる構造が異なるため、往復しても元テキストが完全に復元されるとは限りません。YAMLのコメント、複雑な入れ子、別名などはCSVの列に対応しないことがあります。CSV側も、型を明示する仕組みを標準では持たず、読み込み先ごとに値の解釈が異なる場合があります。
本ツールは区切り文字やヘッダー設定を個別に変更するものではありません。重要な設定・業務データに使う前に原本を残し、行数、列名、空欄、引用符、日本語を含む値、先頭ゼロを照合してください。利用環境に機密データを貼り付けてよいかも、組織のルールに従って判断してください。
関連
関連ツール、特集、利用可能なAPIを探せます。