YAML ↔ Properties 轉換器

在瀏覽器中即時轉換 YAML 和 Properties 配置檔案。支援嵌套結構、陣列、註釋保留,完全相容 Spring Boot,無需上傳至伺服器。

貼上 YAML 或 Properties,或將 .yml、.yaml、.properties 檔案拖放到這裡。轉換方向會依貼上的內容自動判斷。

貼上 YAML 或 Properties,或開啟檔案。YAML 會轉成 Properties,Properties 會轉成 YAML。

輸出

轉換結果會隨著輸入顯示在這裡。

使用方法

  1. 將 YAML 或 Properties 貼上到輸入區,或開啟 .yml、.yaml、.properties 檔案,也可以按「載入範例」
  2. 格式會依貼上的內容判斷,兩個編輯器上方的標籤會顯示轉換方向
  3. 開啟「設定」選擇註釋處理方式、縮排、陣列格式與引號
  4. 結果會隨著輸入即時顯示,沒有轉換按鈕。請依編輯器下方檢查列指出的行與欄修正問題
  5. 按「複製」,或將轉換後的檔案下載為 .properties 或 .yml

實用技巧

  • 支援 YAML 與 Properties 格式之間的雙向轉換
  • 以 # 開頭的行會移到結果最上方(「保留註釋」預設為開啟)
  • 完全相容 Spring Boot 設定檔
  • 可直接開啟檔案或貼上內容,立即轉換

使用 YAML 與 Java Properties 進行設定

這個轉換工具的功能

YAML 與 Java 的 .properties 是撰寫相同設定的兩種方式。properties 檔案每行儲存一組扁平的 鍵=值 配對,並以點來暗示階層(server.servlet.context-path=/api)。YAML 則以實際的縮排與巢狀結構來表達相同的階層。這個工具可讀取任一種格式,判斷你貼上的是哪一種,再改寫成另一種——把以點分隔的鍵展開成巢狀樹狀結構,或把樹狀結構重新攤平成以點分隔的路徑。

由於轉換是雙向的,且依據偵測到的結構而非固定範本進行,因此檔案來回轉換(YAML → Properties → YAML)後仍能得到相同的鍵與值。若要讓清單保持為清單,請在「陣列格式」選擇「索引 ([0])」;使用預設的「以逗號分隔」時,清單會變回單一文字值,# 開頭的行也會移到最上方。

何時使用

最常見的情況是 Spring Boot 專案在 application.properties 與 application.yml 之間遷移。團隊通常從 properties 開始,等到設定變得夠深、以點分隔的鍵難以閱讀時,再切換到 YAML。反方向的轉換同樣好用,例如當某個工具或部署流程需要扁平的 properties 時。

它也很適合用來快速比對兩份設定、把文件中的片段轉成專案實際使用的格式,或在提交前統一縮排與陣列樣式。

範例:一個伺服器區塊

properties 的 server.port=8080 與 server.servlet.context-path=/api 兩行,會變成一個巢狀的 YAML 區塊,其中 server 包含 port: 8080,以及一個存放 context-path: /api 的 servlet 鍵。再轉換回去時,以點分隔的鍵會原封不動地重現。像 8080 這樣的數字會維持不加引號,以保留其整數型別,而不會變成字串。

格式注意事項與邊界情況

開啟「保留註釋」(預設)時,以 # 開頭的行會移到結果最上方;行尾的註釋不會保留,註釋也不會留在它原本說明的鍵旁邊。從 YAML 轉 Properties 時,清單會變成一個以逗號分隔的值(tools=a,b)或索引行(tools[0]=a、tools[1]=b);從 Properties 轉 YAML 時,索引行會變成 YAML 的破折號清單。可調整縮排與字串引號(自動、總是、從不),以配合團隊的風格指南。自動類型偵測可避免布林值、整數與 null 值被加上引號。

常見問題

在 YAML 與 Properties 之間轉換無限量的設定檔皆免費,並內含註解保留、型別自動偵測與可調整的縮排。沒有進階付費方案、使用次數上限,也不需要建立帳號。