TOML から JSON への変換
左側に TOML を貼り付けると、右側に JSON が表示されます。テーブルはオブジェクトに、テーブル配列は配列に。アップロードなし。
- 左側のテキストエリアに TOML を貼り付けます。
- 「JSON に変換」をクリック。出力はテーブルのネストを保持した JSON オブジェクトです。
- 結果をコピーするか、data.json としてダウンロードします。
- datetime 値は ISO 8601 文字列に変換され、数値内のアンダースコアは取り除かれます。
何ができるのか?
TOML 1.0 ドキュメントを JSON オブジェクトにパースします。`[section]` テーブルはネストされたオブジェクトに、`[[items]]` テーブル配列は JSON 配列になります。文字列、整数(16/8/2 進リテラルや桁区切りアンダースコア含む)、浮動小数、ブール、日付、datetime、時刻はすべて JSON の等価表現にマップされます。インラインテーブルとインライン配列も同じ方法で平坦化されます。
例
TOML 入力:
name = "Ada"
active = true
[address]
city = "London" JSON 出力:
{
"name": "Ada",
"active": true,
"address": {
"city": "London"
}
} よくある TOML エラーと修正方法
TOML は場所によっては YAML や JSON より厳格な規則を持ちます。以下のパターンが多くのパーサ失敗をカバーします。
- 引用符のない文字列。 `name = Ada` は無効です — 裸の値はキー/ブール/数値として解釈され、文字列にはなりません。二重引用符を使ってください: `name = "Ada"`。
- 混在型配列(TOML 0.x)。 TOML 0.5 は配列内の混在型を禁止していましたが、TOML 1.0 は許可します。@iarna/toml は 1.0 に従うので、`[1, "two"]` はここで有効です。0.5 ツールチェーンを通すなら、配列を均質に保ってください。
- テーブルの再定義。 `[a]` を 2 回定義するのはエラーです。各テーブルヘッダは最大 1 回しか出現できません。キーを 1 つの `[a]` ブロックにマージしてください。
- タイムゾーンなしの datetime。 `d = 2026-04-26T12:00:00` (Z やオフセットなし) は「ローカル datetime」 — パースはされますが、JSON にはローカル概念がありません。出力は壁時計時刻と同じ文字列で、UTC 時刻ではありません。UTC にするには `Z` を追加: `d = 2026-04-26T12:00:00Z`。
- トリプルクォートのエスケープの混乱。 TOML の基本複数行文字列は `"""..."""` を使い、エスケープを処理します;リテラル複数行文字列は `\'\'\'...\'\'\'` を使い、処理しません。エスケープルールを混ぜることが最も一般的な複数行文字列のエラーです。
- インラインテーブルの拡張。 インラインテーブル `point = {x=1, y=2}` は閉じていて自己完結的です — 後で `[point.z]` や `point.z = 3` を書くことはできません。拡張するには、代わりに標準的な `[point]` ブロック構文を使ってください。
よくある質問
datetime は JSON でどう表現されますか?
JSON にネイティブ datetime 型はないため、値は ISO 8601 文字列になります。オフセット付き datetime (`2026-04-26T12:00:00Z`) とローカル datetime (`2026-04-26T12:00:00`) はどちらも文字どおりに文字列化されますが、JSON で曖昧でないのはオフセット形式のみです。
整数のアンダースコアは保持されますか?
いいえ — TOML は読みやすさのために `1_000_000` を許可しますが、パーサはアンダースコアを除去し、JSON 値は `1000000` です。グループ化は純粋に TOML ソーステキストの機能です。
TOML コメントはどうなりますか?
破棄されます。TOML コメントは `#` で始まりますが、JSON にはコメント構文がないため、パーサはこれらを破棄します。コメントを保持する必要があるなら、別の中間表現が必要です。
テーブル配列はサポートされていますか?
はい。複数回繰り返される `[[products]]` ブロックは `products` キーの下の JSON 配列になります。各 `[[products]]` ヘッダが新しい配列エントリを導入し、続くキー値行がそのエントリを埋めます。
本当に大きな TOML ファイルを変換できますか?
テキストエリアが遅くなる前に約 30 MB まで。非常に大きな TOML ファイルは稀です — ほとんどの設定ファイルは 1 MB をはるかに下回ります。
私の TOML はアップロードされますか?
いいえ。すべてはあなたのブラウザで実行されます — データはこのページの JavaScript で解析され、サーバーに送信されることはありません。