Skip to content

JSONYAML

JSON YAML 変換

JSONを貼り付けて、読みやすいYAMLに。ブラウザ内で即座に。

JSON

JSONをここに貼り付けるか、ファイルをページにドロップ

YAML

入力するとYAMLがここに表示されます

無料・無制限 · 登録不要 · YAML 1.1が誤読する値は自動で引用符で囲まれるため、出力はどこで使っても安全です。

出力に予想より多くの引用符が付く理由

JSONの文字列 "no" に曖昧さはありません。しかし引用符なしのYAMLとして書き戻すと no になり、YAML 1.1パーサーはこれを真偽値 false として読みます。同じ罠に "yes"、"on"、"off"、"022"、"12:30" もはまります。

そのためこの変換ツールは、どちらかのYAMLバージョンがテキスト以外として解釈しうる文字列をすべて引用符で囲みます。結果はごくわずかに冗長になりますが、はるかに壊れにくくなります — PyYAML、Go、JavaScriptのどのパーサーでも往復変換できます。

曖昧な文字列は保護される

引用符が必要な値だけに付き、通常のテキストはそのままです。

JSON

{
  "country": "no",
  "enabled": "yes",
  "mode": "022",
  "name": "api-server",
  "replicas": 3
}

YAML

country: 'no'
enabled: 'yes'
mode: '022'
name: api-server
replicas: 3

バージョン間で意味が変わる値の完全な一覧と、どのパーサーがどのバージョンを読むかは、ガイドYAML 1.1と1.2の違いとNorway問題にあります。

よくある質問

JSONをYAMLに変換するには?

上の左ペインにJSONを貼り付けると、入力と同時に右側にYAMLが表示されます。コピーするか、「ダウンロード」を押して .yaml ファイルを作成してください。登録は不要でアップロードもありません — 変換はブラウザ内で実行されます。ターミナルからは yq -p=json -o=yaml input.json > output.yaml が同じ結果を生成します。どのツールを使うにせよ、曖昧なスカラーの扱いを確認してください。"no"、"yes"、"on"、"off"、"022"、"12:30" のような文字列はYAML出力で引用符で囲む必要があり、そうしないとYAML 1.1パーサーが真偽値や数値として読み戻します。この変換ツールは自動で引用符を付けます。