互轉
本地執行 · 零上傳

TOML ⇄ JSON 轉換

Rust/Python 配置 · 雙向互轉

TOML 轉換

就緒

原始輸入

                                
                            
解析輸出

                                
固定高度,長程式碼在框內滾動

ABOUT

關於 TOML ⇄ JSON 轉換

在 TOML 與 JSON 格式之間轉換,方便編輯 Rust、Python 專案配置檔案。

Rust Cargo、Python Poetry、Hugo 配置——TOML 在靜態型別與指令碼語言生態中越來越常見。本地互轉讓你無需安裝 cargo、python -c 即可審查 pyproject.toml 結構。

DEEP DIVE

深入瞭解 TOML ⇄ JSON 轉換

TOML(Tom's Obvious Minimal Language)因 Rust Cargo、Python Poetry/pyproject.toml、 Hugo 配置等生態而流行。與 JSON 相比,TOML 更易讀寫,但 JavaScript 原生不支援。JSONSort 提供 TOML ↔ JSON 本地雙向轉換,無需安裝 Python tomllib 或 Rust toml crate。

轉換保留表([section])與鍵值結構:TOML table 對應 JSON 物件,陣列 of table 對應 JSON 物件陣列,適合快速檢視 Rust/Python 專案配置結構。

TOML table 與 dotted key 在 JSON 中均對映為巢狀物件;[[array of tables]] 對應 JSON 物件陣列。轉換後建議用樹檢視確認 [dependencies] 等 section 是否正確展開,避免 dotted key 與 table 衝突導致覆蓋。

FEATURES

核心能力

01

TOML → JSON

解析 TOML 配置檔案為 JSON 物件。

02

JSON → TOML

從 JSON 生成格式正確的 TOML 文字。

03

Table 支援

正確處理 [section] 與 [[array of tables]]。

04

型別保留

字串、整數、浮點、布林、日期時間正確對映。

05

檔案匯入

拖拽 .toml 檔案匯入解析。

06

本地轉換

Cargo.toml 等可能含私有 crate 源配置,本地更安全。

07

日期時間

TOML offset datetime 轉為 ISO 8601 JSON 字串。

08

整數/浮點

區分 TOML 整數與浮點,JSON 中型別正確保留。

HOW TO USE

使用步驟

  1. 1

    貼上 TOML 或 JSON

  2. 2

    選擇轉換方向

  3. 3

    複製並匯出結果

  4. 4

    轉換失敗時檢視錯誤提示,修正原始檔語法後重試

  5. 5

    結果可用格式化工具美化,或匯出供下游指令碼使用

WORKFLOW

典型工作流

從匯入資料到匯出結果的完整流程,幫助團隊統一 TOML ⇄ JSON 轉換 的使用方式。

1

匯入 TOML

貼上 Cargo.toml / pyproject.toml 或拖拽檔案。

2

檢查 JSON

樹檢視確認 table 與 array of tables 結構。

3

編輯(可選)

在 JSON 側修改後轉回 TOML 提交 PR。

4

流水線整合

複製 JSON 給不支援 TOML 的內部工具。

USE CASES

適用場景

RU

Rust 開發

Cargo.toml 轉 JSON 後用樹檢視瀏覽依賴結構。

PY

Python 開發

pyproject.toml 轉 JSON 便於 CI 指令碼讀取。

DE

DevOps

統一 TOML 配置與 JSON 配置管理工具鏈。

技術

技術寫作

文件中 TOML 範例旁提供 JSON 等價形式。

RU

Rust 生態

Cargo.toml workspace 成員與 features 轉 JSON 做 CI 矩陣。

靜態

靜態站點

Hugo config.toml 轉 JSON 接入 headless CMS 配置同步。

TIPS

使用技巧

  • Cargo.toml 轉換後檢查 [dependencies] 下的 crate 版本鍵。
  • TOML 日期時間型別在 JSON 中通常轉為 ISO 8601 字串。
  • JSON → TOML 時,深層巢狀物件會轉為 dotted keys 或 subtable。
  • 與 YAML 工具對比:Rust 生態用 TOML,K8s 生態用 YAML,按專案選工具。
  • 轉換失敗時檢查 TOML 是否有重複鍵或未閉合字串。
  • 轉換結果可用格式化工具美化,便於 Git diff 審查。
  • Cargo workspace.dependencies 轉 JSON 後用路徑提取查版本。
  • JSON → TOML 後 dotted key 與 [table] 不要混用同一層級。
  • 轉換失敗時檢查 TOML 是否有重複鍵或未閉合字串。
  • 與 YAML 工具對比:按專案生態選源格式,JSON 作中間橋樑。

LOCAL VS ONLINE

本地 vs 線上工具

JSONSort 堅持純前端架構,以下對比說明為何本地化工具更適合處理開發資料。

對比項
JSONSort 本地
傳統線上工具
資料隱私
完全本地,零上傳
多數需上傳至伺服器
響應速度
毫秒級,無網路延遲
受網路與伺服器負載影響
離線使用
支援 PWA 離線
通常需要聯網
敏感資料
JWT/配置/日誌可放心處理
存在洩露風險
廣告與追蹤
無廣告、無資料追蹤
多數含廣告或 Analytics
檔案拖拽
支援本地檔案直接匯入
部分工具限制上傳大小
工具聯動
19 種工具同一頁面切換
通常每種工具獨立網站
開源透明
純靜態頁,可審查原始碼
閉源服務端不可審計

TROUBLESHOOTING

常見誤區與排查

實際使用中容易遇到的問題及建議處理方式,減少反覆試錯的時間。

重複鍵報錯

建議:TOML 不允許重複定義;檢查 dotted key 與 table 衝突。

轉回 TOML 順序變化

建議:功能等價;若依賴順序請人工調整。

日期格式不對

建議:確認 TOML datetime 帶時區;JSON 側為 ISO 字串。

特殊字元鍵

建議:含點號的鍵用引號包裹 "key.with.dots"。

FAQ

常見問題

支援 Cargo.toml 嗎?

支援標準 TOML 1.0 語法。Cargo 特定語義(如 workspace)按結構轉換。

JSON 轉 TOML 會丟資訊嗎?

JSON 可表示的結構均可轉 TOML。TOML 註釋在 JSON 方向會丟失。

與 YAML 工具有什麼區別?

TOML 與 YAML 語法不同,請根據原始檔格式選擇對應工具。

支援 inline table 嗎?

支援 { key = "value" } 形式,轉為 JSON 巢狀物件。

丟失註釋怎麼辦?

TOML 註釋無法進入 JSON,請保留 .toml 原始檔作為註釋來源。

資料會上傳到伺服器嗎?

不會。JSONSort 所有工具均在瀏覽器本地執行,您的輸入內容不會傳送到任何後端伺服器。

需要註冊或安裝嗎?

不需要。開啟頁面即可使用,無需賬號、無需下載客戶端,也支援 PWA 離線快取。

支援多大的檔案?

取決於瀏覽器記憶體,通常可流暢處理數 MB 級別的資料。超大檔案建議先拆分或使用合併清理工具。

已複製到剪貼簿