tigtools

TOML 轉 JSON 轉換器

貼上 Cargo.toml、pyproject.toml 或設定檔等 TOML 檔案,即可取得格式化 JSON。不會上傳任何內容。

在瀏覽器中執行 免註冊

縮排

改為將 JSON 轉換為 TOML

使用方式

  1. 將 TOML 貼到輸入區,或試試範例。
  2. 選擇 2 或 4 個空格的縮排。
  3. 複製 JSON,或將其下載為 .json 檔案。

運作方式

TOML 使用開放原始碼 smol-toml 程式庫解析,該程式庫實作 TOML 1.0,並拒絕無效文件,例如重複鍵、重複定義的資料表或缺少值。第一個錯誤會顯示其行與欄;訊息文字來自程式庫,且為英文。

資料表會變成 JSON 物件,資料表陣列會變成物件陣列。日期與時間沒有 JSON 型別,因此會以原本撰寫形式轉成 ISO 8601 字串:含偏移的日期時間保留其偏移,本地日期保持 yyyy-mm-dd,本地時間保持 hh:mm:ss。大於 JavaScript 可精確表示的整數會寫成精確的 JSON 數字。inf 與 nan 無法寫入 JSON,會變成 null 並加上附註。

TOML 區分整數與浮點數的方式無法由 JSON 保留:1.0 會寫成 1。註解會被捨棄。反向則為 JSON 轉 TOML。

範例

pyproject.toml

包含 name、version 與 dependencies 的 [project] 資料表會變成 JSON 物件,你可以用 jq 查詢或在指令碼中載入。

找出語法錯誤

如果某個鍵被定義兩次,錯誤會指出第二次定義的行與欄。

常見問題

支援哪個 TOML 版本?

TOML 1.0,包括混合型別陣列、點號鍵以及所有日期與時間型別。

日期會如何處理?

它們會變成 ISO 8601 格式的字串,例如 1979-05-27T07:32:00.000-08:00,或本地日期的 1979-05-27。

為什麼錯誤訊息是英文?

語法錯誤訊息來自 TOML 解析程式庫。行與欄會告訴你該查看哪裡。

隱私權

轉換完全在你的瀏覽器中進行。你的 TOML 與 JSON 不會被上傳或儲存。