ホーム JSON → YAML

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 等価物として書かれます(42truefalsenull)。
  • 空のオブジェクトと配列はそれぞれ {}[] として書かれます。

出力は有効な 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 がデバイスから離れることはありません。