JSON と YAML の間で設定を移行する
JSON 設定を YAML に(またはその逆に)変換します。フォーマット済みの中間ステップを踏み、コミット前に型変換の落とし穴を把握しましょう。
- 1 JSON YAML 相互変換ツール →
JSON を貼り付けるだけで、すぐに YAML に一方向変換できます。
- 2 json-format → json-yaml
元の JSON がミニファイされている場合におすすめです。まず検証して整形表示し、構造を確認してから変換します。
- 3 yaml-convert
逆方向の変換です。引用符なしの YAML スカラーが真偽値や数値に変換されていないか、JSON 出力に注意してください。
- 4
移行をコミットする前に、既知の 3 つの落とし穴を確認してください。数値や真偽値に見える引用符なしの値は型変換されます(バージョン番号や semver 文字列は引用符で囲む)。YAML のアンカーとエイリアス(&ref / *ref)は JSON に等価なものがなく、変換時に展開されます。重複キーは一部の YAML パーサーでは許容されますが、JSON では拒否されるため、意識的に重複を排除してください。
よくある質問
- YAML は JSON のスーパーセットですか?
- YAML 1.2 は事実上、JSON 1.2 構文のスーパーセットです。ほとんどの JSON は YAML としてパースできます。逆は成り立ちません。アンカー、複数ドキュメントストリーム、引用符なしスカラーといった YAML の機能には、JSON での表現がありません。
- バージョン番号がなぜ小数になりましたか?
- YAML は引用符なしの 1.10 を数値の 1.1 としてパースします。文字列として扱いたい場合は、YAML でバージョンのような文字列('1.10')を引用符で囲んでください。
このタスクを解決するワークフロー
JSON 経由で 2 つの YAML 設定を比較
構造化された値の差分比較しやすいように、YAML 設定を JSON に変換する。 パイプライン
検証、フォーマット後 JSON から YAML へ変換
(ミニファイの可能性がある)JSON 設定を YAML に変換し、微妙に誤った YAML を生成成する代わりに最初のノードで構文エラーを捕捉する。 パイプライン
YAML から JSON へ変換
YAML ドキュメントを JSON に変換し、型強制のサプライズのために解析された値を検査する。 パイプライン
CSV から JSON を経て YAML へ変換
スプレッドシートの CSV データを JSON 中間体を経て YAML に変換し、設定生成に適した形にする。 パイプライン
URL 転送用の JSON ペイロードのエンコード
JSON ドキュメントを URL パラメータ用に準備する: 整形、Base64 エンコード、パーセントエンコード — ネストされたパラメータデコードチェーンの正確な逆順。 パイプライン
ENV から JSON を経て YAML へ変換
.env を JSON に変換し、その後デプロイ設定のために YAML に変換する。 パイプライン
HJSON から JSON フォーマットへ変換
HJSON をフォーマットし、標準 JSON に変換する。 パイプライン
INI から JSON を経て YAML へ変換
INI を JSON に変換し、その後モダンな設定フォーマットのために YAML に変換する。 パイプライン
JSON フォーマットと整合性チェックサム計算
JSON ドキュメントを整形し、以降の変更を検出するために CRC32 チェックサムを計算する。 パイプライン
JSON のミニファイと検証
検査のために JSON をフォーマットし、1 パスで構文的に正しいことを検証する。 パイプライン
JSON フォーマットと TypeScript インターフェース生成
JSON ドキュメントをフォーマットし、1 チェーンで TypeScript インターフェース定義を推論する。 パイプライン
JSON から YAML を経て TOML へ変換
JSON 設定を YAML 経由で TOML にマイグレートし、Rust や Python プロジェクト設定に適用する。 パイプライン
JSON5 から JSON フォーマットへ変換
JSON5 をフォーマットし、標準 JSON に変換する。 パイプライン
JSONC から JSON フォーマットへ変換
JSONC(コメント付き JSON)をフォーマットし、標準 JSON に変換する。 パイプライン
JWT ペイロードのデコードとフォーマット
JWT トークンを解析し、ペイロードを抽出し、検査のために JSON をフォーマットする。 パイプライン
Properties から JSON を経て YAML へ変換
Java Properties を JSON に変換し、その後 YAML に変換する。 パイプライン
クエリ文字列解析と JSON フォーマット
クエリ文字列をキー・バリューペアに解析し、その後 JSON としてフォーマットする。 パイプライン
TOML から JSON へ変換
TOML 設定ファイルを JSON 入力を期待するツールや API のために解析する。 パイプライン
TOML から JSON を経て YAML へ変換
TOML 設定を JSON 経由で YAML に変換し、Kubernetes や CI ツールに適用する。 パイプライン
JSON 経由で TOML から YAML へ変換
TOML 設定ファイルを YAML 形式に変換し、JSON を中間表現として使用する。 パイプライン
ネストされた URL パラメータのデコード(Base64 JSON)
URL エンコード Base64 JSON を運ぶ URL パラメータを可読なフォーマット済み JSON に展開する。 パイプライン
YAML から JSON を経て CSV へ変換
YAML を JSON に変換し、その後スプレッドシート使用のために CSV に変換する。 パイプライン
YAML から TypeScript インターフェースを生成
YAML ドキュメントを TypeScript インターフェース定義に変換し、JSON を中間フォーマットとして使用する。 パイプライン
YAML の検証とフォーマット
YAML を JSON に変換して構造を検証し、その後 JSON が well-formed であることを確認する。 パイプライン