JSON → YAML 変換ツール
JSON を貼り付けてクリーンなインデント付き YAML を即取得——厳密な検証、コピー、ダウンロード付き、100% ブラウザ内で完結。
入力 JSON
YAML 出力
YAML とは?
YAML("YAML Ain't Markup Language")は人間が読み書きしやすいように設計された、人間に優しいデータ直列化形式です。インデントでネストを表現し、ダッシュでリスト項目を、key: value でマッピングを表し、JSON に必要な引用符、波括弧、カンマを必要としません。YAML は JSON のスーパーセット——すべての有効な JSON ドキュメントは有効な YAML ドキュメントでもあります——設定ファイル、CI パイプライン、構造化ドキュメントに広く使用されています。
YAML はコンパクトさよりも可読性を重視するため、人間が直接編集するファイルに好まれる形式です:Kubernetes マニフェスト、Docker Compose ファイル、GitHub Actions ワークフロー、Ansible プレイブック、アプリケーション設定がよく YAML を使用します。
JSON を YAML に変換する理由
JSON と YAML は同じデータ構造——オブジェクト、配列、文字列、数値、真偽値、null——を表すため、変換はロスレスです。JSON を YAML に変換したい理由はいくつかあります:
- 手作業での編集。YAML のインデントベースの構文は JSON の波括弧や引用符よりも読みやすく修正しやすい。
- 設定。多くのツールは YAML 設定を受け付けるが JSON をエクスポート・公開する——変換で両者間を移動。
- ドキュメント。YAML のクリーンな見た目は README ファイル、チュートリアル、インラインドキュメントにデータを埋め込むのに適している。
- 差分レビュー。インデントベースの差分は変更をレビューする際に波括弧ベースより明確なことが多い。
逆に、ネットワーク経由でデータを送信、プログラム的に解析、JavaScript に埋め込む場合は JSON が通常より良い選択です。2 つの形式は相補的——変換でそれぞれの得意な場面で使用できます。
変換の仕組み
このツールはブラウザネイティブの JSON.parse で JSON 入力を解析し、結果のオブジェクトツリーを走査して次の規則に従い YAML テキストを出力します:
- オブジェクトはマッピングになります:各
"key": valueペアは独自の行でkey: valueになり、インデントでネストを示します。 - 配列はシーケンスになります:各項目は独自の行に
-プレフィックス付きで書かれます。 - 文字列はシンプルで曖昧でない場合は引用符なしで書かれ、それ以外は二重引用符で囲まれ適切にエスケープされます。
- 数値、真偽値、nullは裸の YAML 等価物として書かれます(
42、true、false、null)。 - 空のオブジェクトと配列はそれぞれ
{}と[]として書かれます。
出力は有効な YAML 1.2 で、ほとんどの YAML パーサーでクリーンにラウンドトリップします。インデントは最も一般的な慣習であるレベルごとにスペース 2 個を使用します。
JSON と YAML の使い分け
両形式にはそれぞれの長所があります。データの使用方法に基づいて選択してください:
- JSON を使用するのは API ペイロード、NoSQL ドキュメントストレージ、サービス間通信、JavaScript への埋め込みデータ、機械解析と小サイズが最も重要な場合。
- YAML を使用するのは設定ファイル、CI/CD パイプライン、Infrastructure as Code マニフェスト、ドキュメントスニペット、人間が手作業で読み書きするファイルの場合。
実用的なワークフローは、機械生成データを JSON で保存し、人間が読み書きする必要がある場合にのみ YAML に変換することです。これにより機械のパスをシンプルかつ高速に保ちつつ、人間に快適な編集体験を提供できます。
注意すべき制限
このコンバーターは JSON データモデルを完全に処理しますが、YAML には JSON にない機能があります。いくつか留意点があります:
- 複数行文字列。JSON は改行を
\nとしてエスケープします。コンバーターはそれらを引用符付き YAML 文字列内のエスケープシーケンスとして保持します。高度な YAML ブロックスカラー(|と>)は出力されません。 - アンカーとエイリアス。JSON には参照の概念がないため、出力に YAML アンカーやエイリアスは含まれません。重複構造はインラインで出力されます。
- タグとカスタム型。YAML の型システムは JSON より豊富ですが、出力はコア JSON 型のみに留まります。
- コメント。JSON にはコメントがないため、YAML 出力にもありません。必要な場合は変換後に手作業で追加してください。
ほとんどのユースケース——設定ファイル、データ検査、ドキュメント——では、変換された YAML はそのまま使用できます。
この JSON → YAML 変換ツールは無料ですか?
はい、完全に無料で、登録不要、デバイスのメモリ以外に制限はなく、アップロード不要——すべてローカルで実行されます。
無効な JSON は変換されますか?
いいえ。ツールは最初に JSON を検証し、無効な場合は解析エラーを表示します。JSON を修正してから再度変換してください。
YAML 出力はタブですか、スペースですか?
スペースです——インデントレベルごとに 2 個のスペースで、最も一般的な YAML の慣習です。YAML ではインデントにタブは許可されません。
YAML を JSON に戻せますか?
はい。このサイトの付属ツール「YAML to JSON」を使用して逆方向に変換できます。
データはアップロードされますか?
いいえ。すべての解析と変換はブラウザ内で行われ、JSON がデバイスから離れることはありません。