功能介紹
這個工具可以把 TOML 轉成 JSON,也能把 JSON 轉回 TOML。TOML 是 Rust 的 Cargo.toml、Python 的 pyproject.toml、Hugo、Netlify、Deno 和許多其他工具背後的設定檔格式。它很方便人工編輯,但大多數指令碼、API 和驗證工具需要的是 JSON。轉換之後,你就能用 JSON 工具檢查設定、把它交給程式處理,或把 JSON 資料整理成清爽的設定檔。
使用方式
- 把 TOML 貼到輸入框、拖曳
.toml檔案進來,或按 範例。 - JSON 會隨著輸入即時出現。可選擇 2 或 4 個空格縮排。
- 把 方向 切換成 JSON → TOML 就能反向轉換。JSON 的最外層必須是物件,因為 TOML 文件永遠是一個表格。
- 複製或下載結果。
如果 TOML 有錯誤,錯誤訊息會顯示行號和欄號,點一下就會跳到該位置。常見的錯誤包括少了結尾引號、重複定義同一個鍵或表格,以及在 = 右邊放了沒有加引號的字串。
範例
TOML 輸入:
[server]
host = "0.0.0.0"
port = 8080
[[users]]
name = "Alice"
roles = ["admin", "editor"]
JSON 輸出:
{
"server": { "host": "0.0.0.0", "port": 8080 },
"users": [{ "name": "Alice", "roles": ["admin", "editor"] }]
}
[server] 會變成巢狀物件,每個 [[users]] 區塊則會在 users 陣列中新增一個元素。
型別對應
- 字串、整數、浮點數和布林值直接對應。超出 JavaScript 安全範圍的大整數會失去精度,所以 ID 請保持為字串。
- 陣列對應到陣列,表格和行內表格對應到物件。
- 帶時差的日期時間、本地日期時間、本地日期和本地時間都會變成 ISO 8601 字串。
- 反方向轉換時,
null在 TOML 中沒有對應值,會連同路徑一起回報錯誤。巢狀物件會變成[table]區段,物件陣列會變成[[array]]區段。
常見問題
› 我的 TOML 檔案會被上傳嗎?
不會。剖析和轉換完全在你的瀏覽器中執行,所以 Cargo 資訊清單、pyproject 檔案和含有機密資訊的設定檔都不會離開你的裝置。
› 支援哪個 TOML 版本?
TOML 1.0,包括表格、表格陣列、行內表格、多行字串、日期與時間,以及十六進位、八進位和二進位整數。
› TOML 的日期會怎麼轉成 JSON?
JSON 沒有日期型別,所以日期和時間會變成 ISO 8601 字串。例如 2026-10-08 會保持為 "2026-10-08",1979-05-27T07:32:00Z 則變成 "1979-05-27T07:32:00.000Z"。
› 為什麼 JSON 轉 TOML 遇到 null 會失敗?
TOML 沒有 null 值。工具會停下來並告訴你第一個 null 的路徑,例如 database.password,讓你移除該鍵或給它一個值。
› 註解會保留嗎?
不會。TOML 中的註解會被丟棄,因為 JSON 無法容納註解;而 JSON 本身也沒有註解可以帶到 TOML。