Tools

JSON → YAML

JSONデータをYAML形式に変換します。

JSON
Ln:1 Col:1
YAML

JSON to YAML 変換について

YAML(YAML Ain't Markup Language)は、現代のDevOpsおよびクラウドネイティブインフラのデフォルト設定フォーマットになっています。Kubernetesマニフェスト、Docker Composeファイル、GitHub Actionsワークフロー、Ansibleプレイブック、CI/CDパイプラインはすべてYAMLを使用しています。JSONからYAMLへの変換は、APIレスポンスを設定ファイルに変換したり、JSONベースの設定をYAMLに移行したりするDevOpsワークフローで最も一般的なタスクの一つです。

YAML vs JSON クイックリファレンス

YAMLは波括弧や角括弧の代わりにインデントを使用し、設定ファイルで読みやすくなっています。YAMLはコメント(#で始まる行)、複数行文字列(リテラルブロック用の|またはfolded block用の>)、値の再利用のためのアンカー/エイリアスをサポートします。すべての有効なJSONドキュメントはYAMLとしても有効ですが、YAMLはJSONにない追加機能を提供します。YAMLは慣例として2スペースインデントを使用し、タブは許可されていません。

覚えておくべき主な違い:YAML文字列は、コロン・括弧・ハッシュ記号などの特殊文字を含まない限り、通常クォートは不要です。YAMLのブール値(true/false、yes/no、on/off)は予期しない型強制を引き起こす可能性があります——NOがfalseと解釈される「ノルウェー問題」はよく知られたYAMLの落とし穴です。8進数(0755)や浮動小数点(1.0)のような数値も自動変換される場合があります。

よくある質問

YAMLでインデント エラーが発生する理由は?
YAMLはタブを許可しておらず、2スペースのインデントを推奨します。エディタのタブ→スペース変換設定を確認してください。
YAMLの「ノルウェー問題」とは?
YAML 1.1ではNOがブーリアンのfalseとして解釈されます。国コードNO(ノルウェー)を文字列として保持するにはクォート("NO")を使用してください。YAML 1.2ではtrue/falseのみがブーリアンとして認識されます。
JSONコメントはYAML変換後に保持されますか?
標準JSONはコメントをサポートしていません。JSON5/JSONCのコメントはパース時に削除されます。YAMLは#コメントをサポートしているので、変換後に必要なコメントを追加してください。