ssecutils

🔄 JSON ↔ YAML Converter

JSONとYAMLの相互変換。Kubernetes / Docker Compose / GitHub Actions / CircleCI 等の設定ファイルの形式変換に最適です。 変換はすべてブラウザ内で行われ、入力データはサーバーに送信されません。

インデント:
158 文字 · 158 bytes
116 bytes

💡 JSONとYAMLについて

  • YAML(YAML Ain't Markup Language)は人間に読みやすい設定ファイル形式。Kubernetes / Docker Compose / GitHub Actions / Ansible 等で使われます。
  • JSON(JavaScript Object Notation)はAPI通信・設定ファイル両方で使われる形式。インデント不要で機械処理に向きますが、コメントが書けない欠点があります。
  • 変換時の注意: YAMLには JSON にない型(タイムスタンプ、バイナリ等)があり、JSONに変換するとそれらは文字列化されます。逆変換時は元に戻りません。
  • 本ツールは YAMLのアンカー・エイリアス(&name, *name を解釈時に展開します。出力時は noRefs: true で再展開せず通常の値として出します。
  • YAML 1.2 / JSON Schema 互換でパースしているので、yeson のような曖昧な真偽値は文字列扱いです(YAML 1.1 の罠を回避)。
使い方と解説

JSONとYAMLを相互変換する

JSON YAML Converter は、JSONとYAMLをブラウザ内で相互変換するツールです。Kubernetes、Docker Compose、GitHub Actions、API設定の形式変換や確認に使えます。

入力データの扱い

入力したJSONやYAMLはブラウザ内で変換され、サーバーへ送信されません。

設定ファイルの形式を変換する

JSONで受け取った設定をYAMLへ変換したり、YAMLの設定をJSONとして確認したりできます。インデントや配列構造を見直したいときにも便利です。

変換時の注意点

YAMLにはコメント、アンカー、複数の表現方法があります。JSONへ変換すると失われる情報もあるため、最終的な設定ファイルでは意味が変わっていないか確認することが重要です。

引用符なしの値が別物に化けるケース

YAMLで有名な落とし穴が、通称ノルウェー問題です。YAML 1.1 では no / off / yes / on が真偽値として解釈されるため、国コードの NO を引用符なしで書くと false になります。同じ理屈で、バージョン番号の 1.10 は数値の 1.1 として読まれて末尾のゼロが消え、先頭ゼロの付いた 08 のような値は8進数と解釈されてエラーや別の数値になることがあります。時刻の 12:30 が60進数として扱われる例もあります。YAML 1.2 では真偽値は true / false のみですが、実際にどちらの仕様で動くかはパーサ次第です。文字列として扱いたい値は引用符で囲むのが確実で、変換結果をJSON側で見ると、意図した文字列のままか、真偽値や数値に化けているかがはっきり分かります。

JSON ↔ YAML Converter でできること

  • JSONからYAML、YAMLからJSONへ変換
  • 設定ファイルの構造確認
  • KubernetesやCI設定の調査に使える
関連ツール

次に使うツール

作業の流れに近いツールへすぐ移動できます。

解説記事

このツールに関連する解説記事

すべての記事 →