YAML を JSON に変換

js-yaml ライブラリを使って YAML を標準 JSON オブジェクトへ変換する無料オンラインツールです。マッピングやリストは自動で JSON オブジェクト・配列へ変換され、pretty 出力も切り替え可能です。タブ、未閉合の引用符、不正なインデント、キー形式など 5 種類のよくある YAML エラーもブラウザ内で自動修正します。

関連おすすめ

YAML を JSON に変換する理由

YAML は人間が読みやすい設定記述に向いた形式で、Kubernetes、Docker Compose、Ansible、GitHub Actions などの設定ファイルで広く使われています。一方、JSON は Web API、JavaScript、各種 SDK で扱いやすい標準データ形式です。このツールは、YAML 設定をそのまま機械処理しやすい JSON に変換するためのものです。

変換の中心は js-yaml による YAML 解析です。YAML のマッピングは JSON オブジェクト、リストは JSON 配列、文字列・数値・真偽値・null は対応する JSON 型に変換されます。コメントは JSON 標準に存在しないため出力には残りません。

pretty 出力を使えば 2 スペース整形の読みやすい JSON を取得でき、オフにすれば API 送信や保存に向く 1 行 JSON を出力できます。日常的な設定確認にも、CI/CD でのデータ受け渡しにも使いやすい構成です。

実際の YAML にはタブ混在、未閉合の引用符、崩れたインデント、特殊なキー名などのミスがよくあります。このツールの tryFixYAML はそのような 5 種類の一般的な問題を自動補正し、ブラウザ内だけで安全に変換できます。

ユースケース

  • Kubernetes manifest や Helm values.yaml を JSON に変換して jq や検証処理に回したいとき
  • docker-compose.yml を JSON に変換して他のツールや API へ渡したいとき
  • GitHub Actions や GitLab CI の YAML を JSON として比較・加工したいとき
  • Ansible playbook や監視設定ファイルをプログラムから扱いやすい JSON にしたいとき
  • OpenAPI / Swagger の YAML 定義を JSON に変換して生成ツールへ渡したいとき
  • YAML と JSON の型対応や構文差を学習・説明したいとき

使い方

  1. 左側に YAML を貼り付けるか、.yaml / .yml / .txt ファイルをアップロードします
  2. 入力後 400ms で自動変換され、右側に JSON 結果が表示されます
  3. 必要に応じて「フォーマット出力」を切り替え、整形 JSON と圧縮 JSON を選びます
  4. エラーが出た場合は「構造を修復」で一般的な YAML ミスを自動修正します
  5. 結果をコピーするか、converted.json としてダウンロードして利用します

特徴

  • js-yaml ベースで YAML のマッピング、リスト、ネスト構造、複数行文字列、アンカーとエイリアスを解析します
  • タブ、未閉合の引用符、不正なインデント、特殊なキー名、行末空白の 5 種類の YAML エラーを自動修正します
  • pretty 出力では 2 スペース整形の JSON、オフでは圧縮された 1 行 JSON を出力できます
  • ネストした YAML 構造を JSON のオブジェクトと配列へ再帰的に変換します
  • YAML コメントは無視され、変換後の JSON は純粋なデータだけを保持します
  • 入力後 400ms の自動変換で、構成ファイルをすばやく確認できます
  • 右側は JSON 構文ハイライト付きで、複雑な出力も読みやすく確認できます
  • アップロード、コピー、ダウンロード、履歴復元までブラウザ内で完結します
  • すべての解析と変換はローカル処理で行われ、設定内容はサーバーへ送信されません

よくある質問

YAML を JSON に変換する方法は?

左側に YAML を貼り付けるか、.yaml / .yml / .txt ファイルを読み込むと、ツールが js-yaml で内容を解析し、標準 JSON へ自動変換します。YAML のマッピングは JSON オブジェクト、リストは JSON 配列として出力されます。入力後は約 400ms で自動変換されます。

YAML のコメントは JSON に残りますか?

残りません。YAML の # コメントは人間向けの補足情報なので、解析時に無視されます。変換後の JSON は純粋なデータのみを保持します。コメントを残したい場合は、元の YAML を別途保管するか、JSON 内に comment フィールドを明示的に持たせてください。

インデントや引用符に問題がある YAML も修復できますか?

はい。ツールには tryFixYAML が組み込まれており、タブの空白変換、未閉合の引用符、崩れたインデント、特殊キー名、行末空白など 5 種類のよくある YAML ミスを自動修正できます。ただし大きく壊れた YAML は手動確認が必要な場合があります。

トラブルシューティング

YAML の解析エラーが出る

多くはインデント不一致、タブ混在、未閉合引用符、コロン不足が原因です。まず構造修復を試し、その後に YAML の階層を見直してください。

コメントが JSON に残らない

JSON はコメントを標準サポートしないため、YAML の # コメントは変換時に除去されます。必要なら別フィールドで保持してください。

アンカーとエイリアスが消えた

js-yaml はアンカー参照を展開してから JSON に変換します。そのため JSON には参照記法ではなく展開済みデータが出力されます。

日付が文字列になった

YAML の日付は内部的に Date として扱われても、JSON 出力時には ISO 形式の文字列になります。JSON に日付型はありません。

複数文書 YAML を扱いたい

このツールは現在単一文書の変換を前提にしています。--- で分かれた YAML は分割して個別に変換するのが安全です。

用語集

YAML
人間向けの可読性を重視したデータシリアライズ形式。Kubernetes や Docker Compose の設定で広く使われます。
JSON
JavaScript Object Notation。API、Web アプリ、各種プログラムで広く使われる標準データ形式です。
js-yaml
JavaScript 向けの成熟した YAML パーサー。YAML を JavaScript オブジェクトに変換するために使われます。
Indentation
YAML で階層を表すインデント。通常はスペースを使い、タブは避ける必要があります。
Anchor
YAML の &name 構文。再利用したい値や構造に名前を付ける機能です。
Alias
YAML の *name 構文。前に定義したアンカーを参照するときに使います。
Pretty Output
2 スペース整形と改行付きの JSON 出力。人間が読みやすい形式です。
tryFixYAML
このツール内蔵の YAML 修復ロジック。一般的な構文ミスを変換前に自動補正します。

YAML と JSON の型対応

基本的な YAML 構造は次のように JSON へ変換されます。

YAML 型YAML 例JSON 出力変換ルール
stringname: Alice"name": "Alice"文字列は JSON 文字列になります。
numberage: 30"age": 30数値はそのまま数値型で保持されます。
booleanenabled: true"enabled": truetrue / false は JSON ブール値になります。
sequence- a - b["a", "b"]YAML リストは JSON 配列になります。
mappinguser: name: Alice{"user": {"name": "Alice"}}YAML マッピングは JSON オブジェクトになります。

YAML と JSON の形式比較

YAML と JSON は用途が重なる一方で、読みやすさと機械処理のしやすさに違いがあります。

観点YAMLJSONメモ
可読性高い中程度YAML は設定ファイルを人が読む用途に向いています。
コメント# に対応非対応JSON には標準コメント構文がありません。
配列- item[item]YAML はダッシュ、JSON は角括弧を使います。
用途設定API / データ交換YAML は設定、JSON はデータ通信に向きます。

自動修復される YAML エラー

tryFixYAML は次のような一般的な問題を補正します。

エラー種別修復後説明
タブkey: valuekey: valueタブをスペースに置き換えます。
未閉合引用符key: 'valuekey: 'value'足りない引用符を補います。
行末空白key: value key: value不要な空白を削除します。
不正インデント key: valuekey: value2 スペース単位に整えます。

Privacy & Security

この YAML から JSON 変換ツールは、YAML 解析、JSON シリアライズ、エラー修正のすべてをブラウザ内 JavaScript で実行します。入力した YAML や生成された JSON はサーバーへ送信されません。Kubernetes secret、API キー、データベース接続情報を含む設定でも、ローカル環境で安全に変換できます。

Authoritative References