使い方
- 左側に JSON を貼り付けるか、「サンプルを読み込む」をクリックします。
- JSON が入力されると TOML が表示されます。無効な場合はエラーの行が表示されます。
- TOML をコピーまたはダウンロードするか、「変換の向きを入れ替え」をクリックして TOML から JSON に戻します。
オプションの説明
- null 値
- TOML には null がないため、null のキーと配列要素は省略され、最初の行に省略したパスを示すコメントが入ります。
- オブジェクト以外のルート
- TOML のトップレベルはテーブルでなければなりません。JSON のルートが配列や単一の値の場合は items キーの下に置き、そのことをコメントで示します。
- テーブルとテーブル配列
- ネストしたオブジェクトは [a.b] テーブルに、要素がすべてオブジェクトの配列は [[a]] テーブル配列にし、それ以外の配列はインラインで書きます。
例
JSON:
{"server":{"host":"0.0.0.0","port":8080},"databases":[{"name":"main","url":"postgres://db:5432/app"}]}
TOML:
[server]
host = "0.0.0.0"
port = 8080
[[databases]]
name = "main"
url = "postgres://db:5432/app"
よくある質問
TOML と JSON はどう違いますか?
TOML は手で書く設定形式で、コメント、セクション、日時の値を扱えます。Cargo、pyproject、Hugo、Netlify などで使われます。JSON はプログラム間のデータ交換に向き、コメントはありません。
1.0 が 1 になったのはなぜですか?
JSON を JavaScript で解析すると 1 と 1.0 は同じ数値なので、整数として書き出されます。浮動小数点として必要な項目は、TOML で 1.0 に直してください。
キーの順序は保持されますか?
通常のキーと値は JSON の順序を保持します。TOML では [tables] と [[arrays of tables]] を通常のキーの後に置く必要があるため、それらは末尾へ移動します。
データはアップロードされますか?
いいえ。解析と変換はブラウザ内で行われるため、トークンやパスワードを含む設定にも使えます。
プライバシー
このツールはすべてブラウザ内で動作します。ファイルやテキストはお使いの端末上で処理され、当サイトのサーバーにアップロードされることはありません。