abox.tools

言語: 日本語

YAMLとJSONを相互変換する方法

1つの文書をローカルで変換し、使用前に値を確認します。YAMLのコメントはJSONでは消え、この読み取り処理は未対応のYAML構文を意図的に拒否します。

YAML・JSON変換を開く 双方向で、それぞれの代償も伝えます。どちらも、よそのサーバーに貼り付けられることはありません。

Markdownで表示

方向を選びテキストを入力する

文書を貼り付けるかファイルを選びます。メニューでYAMLからJSON、JSONからYAMLを選べます。.json、.yaml、.ymlファイルの読み込みは対応する方向を選択します。コピーやダウンロード前に結果を確認してください。

設定をアップロードせず、ブラウザで変換します。データが変わらなくても、整形やコメントの変更が保守者に影響する場合があるので、原本を残してください。

YAML入力とJSON出力、および破棄したコメントの数。
コメントは消えますが、noは文字列のままで、大きな整数の桁も保持します。

対応するYAMLのサブセットを使う

一般的なマッピング、シーケンス、スカラー値をYAML 1.2に準じた解決規則で扱います。YAML 1.2の完全な実装ではありません。アンカー、エイリアス、独自タグ、複数文書ストリームは変換を停止します。必要なファイルには対応するパーサーを使ってください。意味を保たずエイリアスを削除すると設定が変わります。

解析エラーにはエラー位置への移動があります。編集すると前の出力は利用できなくなるため、それを使わず、報告された入力を修正してください。

コメント、文字列、数値を確認する

enabled: true
country: no
account: 12345678901234567890

ここではnoは文字列"no"のままで、YAML 1.1のようにfalseにはなりません。長い口座番号をJavaScriptの浮動小数点で丸めず、数値のテキストを保持します。ただし、出力を読むアプリには独自の数値制限がある場合があります。

JSONにはコメントがないので、YAMLのコメントは破棄し、読み取ったコメントをツールが報告します。引用符で囲んだ文字列やブロックスカラー内の#は内容であり、コメントではありません。

JSONをYAMLへ戻す

データモデルは引き継ぎますが、新しく書かれたYAMLであって、以前のコメントや整形を復元するものではありません。YAML 1.1を使う読み手に備え、曖昧な単語を引用符で囲みます。特に配備設定では、使用先のアプリのYAMLバージョンとスキーマを確認してください。

YAML仕様は言語全体を説明しています。JSONだけの確認や圧縮にはJSON整形ツールを使います。