跳到正文
馬克工具箱

TOML 轉 JSON

把 TOML 配置轉換成 JSON,便於用程式處理或檢查 Cargo.toml、pyproject.toml 等檔案的實際結構。按 TOML 1.0 規範解析,語法有誤時提示出錯的行和列。

在瀏覽器本地執行,輸入的內容和檔案都不會上傳

TOML → JSON
輸出 (JSON)

使用步驟

  1. 在左側貼上 TOML,或點選「載入示例」。
  2. 選擇 2 或 4 個空格縮排,JSON 會即時生成。
  3. TOML 有語法錯誤(如重複的鍵、缺少值)時,會提示出錯所在的行。
  4. 複製或下載 JSON;點選「反向轉換」可以把 JSON 轉回 TOML。

引數說明

縮排
JSON 輸出的縮排,2 或 4 個空格。
日期時間
TOML 的日期時間轉成字串。帶時區的保留偏移量,本地日期(如 1979-05-27)和本地時間保持原樣,不會補時區。
嚴格校驗
按規範拒絕重複定義的鍵和表、非法轉義、超出範圍的整數等,不會悄悄覆蓋。

示例

TOML:

title = "TOML Example"

[owner]
name = "Tom"
dob = 1979-05-27T07:32:00-08:00

[database]
ports = [8000, 8001]
enabled = true

JSON:

{
  "title": "TOML Example",
  "owner": {
    "name": "Tom",
    "dob": "1979-05-27T07:32:00.000-08:00"
  },
  "database": {
    "ports": [8000, 8001],
    "enabled": true
  }
}

常見問題

支援哪個版本的 TOML?

TOML 1.0.0,包括點號鍵、行內表、多行基本字串和字面量字串、十六進位制/八進位制/二進位制整數、inf 和 nan(JSON 沒有這兩個值,會輸出 null)。

註釋會保留嗎?

不會。JSON 不支援註釋,轉換時 TOML 裡的註釋會被丟棄。

大整數會丟精度嗎?

TOML 整數是 64 位,超過 2^53 的整數在 JavaScript 中無法精確表示,輸出可能與原值有差異。一般的配置不會遇到。

資料會上傳嗎?

不會。解析和轉換都在瀏覽器中完成。

隱私說明

本工具完全在瀏覽器中執行,檔案和文字都在你的裝置上處理,不會上傳到我們的伺服器。

相關工具