YAML 與 JSON 雙向轉換
YAML 和 JSON 是最常見的兩種設定檔與結構化資料格式。Kubernetes manifest、Docker Compose 檔案、CI 流程和 OpenAPI 規格通常以 YAML 撰寫,而 API、JavaScript 程式碼與許多工具則多使用 JSON。這款轉換工具支援雙向即時轉換,並會在輸入內容無效時,明確提示錯誤原因。
功能特色
- 雙向轉換:支援 YAML → JSON 及 JSON → YAML,一鍵即可切換。
- 語法驗證:針對縮排錯誤、引號未閉合及無效的 JSON 提供清晰的錯誤訊息。
- 多文件 YAML:支援將多個 YAML 文件轉換為 JSON 陣列。
- 自動解析:自動處理 YAML 的錨點 (anchors)、別名 (aliases) 與合併鍵 (merge keys)。
- 自訂縮排:輸出結果可選擇 2 個或 4 個空格縮排。
- 複製或下載:可將結果複製或下載為
.json或.yaml檔案。 - 注重隱私:所有處理皆在本地端完成,資料不會傳送至伺服器。
範例
以下 YAML:
name: web-app
replicas: 3
ports:
- 80
- 443
env:
NODE_ENV: production
可轉換為以下 JSON:
{
"name": "web-app",
"replicas": 3,
"ports": [80, 443],
"env": {
"NODE_ENV": "production"
}
}
常見的 YAML 錯誤
- 使用 Tab 縮排。 YAML 僅允許使用空格。請將 Tab 替換為兩個空格。
- 縮排不一致。 屬於同一層級的項目,其縮排的空格數必須完全相同。
- 冒號後缺少空格。
key:value會被視為單一字串;請寫成key: value。 - 字串包含特殊字元。 若值以
@、*、&、!、%、{或[開頭,或包含:,則必須加上引號。 - 非預期的型別。 像是
1.10的版本號會變成數字 1.1,且開頭的零可能會消失。若值必須保持為純文字,請加上引號。
相關工具
使用 JSON 格式化工具來排版美化或壓縮產生的 JSON,透過 JSON 轉 CSV 將 JSON 轉換為試算表,或是用 差異比對工具來比較兩個設定檔。