開發者工具 / 06

JSON 轉 YAML 轉換器

將JSON轉成易讀的YAML,適合設定檔與 manifest。

JSON 轉 YAML 轉換器: TOEA會以兩個空格縮排將文件寫成YAML,並為可能被誤讀的值加上引號,同時讓長字串維持在同一行。 全程在瀏覽器中於本機執行,檔案不會上傳至伺服器。

使用次數
在瀏覽器中
費用
免費・免註冊
可用狀態
可立即使用
JSON → YAML 工作台本機處理

全程在瀏覽器中執行

↥
將JSON貼到下方,或選擇檔案

最多5 MB・不會上傳

其他程式讀取 YAML 時

只要 YAML 1.1 或 1.2 讀取器可能將字串解讀成其他內容,就會為該字串加上引號。這包括任何大小寫的yes、no、on與off,單獨的字母y與n,null與~,以及0123等帶前導零的數字、十六進位與八進位格式,還有2024-01-05或12:30等日期與時間。許多 Python 工具與 Ansible 使用的 PyYAML,否則會將on讀成true,將0123讀成八進位數字83。JSON 數字、布林值與null會維持不加引號,因此其型別不會改變。

整理供人閱讀的輸出

除了整數鍵以外,鍵會保留在 JSON 中的原有順序,因此轉換前請將讀取器會尋找的欄位,例如name、image或version,放在每個物件的最上方。轉換後可以使用#加入註解;註解在編輯時會保留,但再次轉成 JSON 時不會保留。全程使用兩個空格縮排,YAML 檔案絕對不能使用定位字元縮排,因此修改結果時請在編輯器中維持這項設定。

許多讀取 YAML 的工具也能直接接受 JSON,因為 JSON 是有效的 YAML 1.2。轉換的目的是提升可讀性與加入註解,而不是相容性。

使用方式

  1. 貼上JSON或選擇檔案。
  2. 檢查YAML。
  3. 複製或下載結果。

隱私與限制

文字會在瀏覽器中轉換,絕不會上傳;當檔案是設定檔或您不想交給陌生人的匯出資料時,這點尤其重要。必要時會為值加上引號,確保輸出重新解析後與輸入內容完全一致。

相關工具

常見問題

為什麼有些值會加上引號?

如果字串包含冒號,或YAML 1.1或1.2解析器會將其視為數字、布林值、null或日期(yes、off、0123、2024-01-05),就會加上引號,確保重新解析後仍是相同的字串。

為什麼長網址不會換行?

YAML支援折疊換行,但在需要手動編輯的檔案中可能造成意外,因此會停用這項功能,讓長值維持在同一行。

可以完整往返轉換嗎?

可以。透過YAML轉JSON工具轉回後,會還原原始文件,這也是測試所驗證的結果。

可以在輸出中加入註解嗎?

不行。來源JSON沒有註解可供轉移,因此結果不會包含註解。

免費工具・使用在瀏覽器中次・免註冊