YAML/TOML/JSON相互変換
YAML・TOML・JSONの3形式を相互に変換できるツールです。入力に構文エラーがある場合は、エラーの行・列と該当箇所を表示します。設定ファイルの形式変換やCI設定の確認などに使え、すべてブラウザ内で処理されます。
使い方
- 上部のボタンで、変換元と変換先の形式(JSON・YAML・TOML)を選びます。中央の矢印ボタンで入れ替えることもできます。
- 左側にデータを入力または貼り付けるか、「ファイルを開く」やドラッグ&ドロップでファイルを読み込みます。ファイルの拡張子から変換元の形式を自動で選択します。
- 入力と同時に右側へ変換結果が表示されます。構文エラーがある場合は、エラーの行・列と前後の行が表示されます。
- 「クリップボードへコピー」または「ダウンロード」で変換結果を保存します。JSON・YAMLではインデント幅も選べます。
このツールについて
YAML・TOML・JSONは、いずれも設定ファイルやデータ交換に広く使われるテキスト形式です。KubernetesやGitHub ActionsではYAML、RustのCargoやPythonのpyproject.tomlではTOML、APIやpackage.jsonではJSONが使われるなど、用途によって形式が異なるため、形式間の変換が必要になる場面がよくあります。
このツールでは、YAMLの解析・生成にyaml(ISCライセンス)、TOMLの解析・生成にsmol-toml(BSD-3-Clauseライセンス)を使用しています。構文エラーがあると変換結果の代わりにエラー箇所を表示するため、インデントのずれや括弧の閉じ忘れなどをすぐに見つけられます。
形式ごとに表現できるデータには違いがあります。TOMLにはnullがなく最上位は必ずキーと値の組になるため、そのような値は変換時に除外されるか、エラーとして表示されます。また、TOMLの日時型はISO 8601形式の文字列として出力されます。変換はすべてブラウザ内で完結し、データがサーバーへ送信されることはありません。
よくある質問
YAMLのコメントは変換後も残りますか?
残りません。JSONにはコメントの仕組みがないため、データとして解析した値だけを変換します。TOMLやYAMLへ変換した場合も、元のコメントは出力されません。
null を含むデータをTOMLに変換するとどうなりますか?
TOMLにはnullに相当する値がないため、値がnullの項目は出力から除外され、その旨の警告が表示されます。
複数ドキュメント(---区切り)のYAMLは変換できますか?
1つのドキュメントのみに対応しています。複数のドキュメントを含む場合はエラーになるため、ドキュメントごとに分けて変換してください。
入力したデータはサーバーに送信されますか?
送信されません。解析と変換はすべてブラウザ内のJavaScriptで行われます。