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

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

[YAML・JSON変換を開く](https://abox.tools/ja/yaml-to-json/): 双方向で、それぞれの代償も伝えます。どちらも、よそのサーバーに貼り付けられることはありません。

最終更新 2026年10月12日

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

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

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

![YAML入力とJSON出力、および破棄したコメントの数。](https://abox.tools/screens/convert-yaml-and-json/values.webp)

コメントは消えますが、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仕様](https://yaml.org/spec/1.2.2/)は言語全体を説明しています。JSONだけの確認や圧縮には[JSON整形ツール](https://abox.tools/ja/json-formatter/)を使います。
