JSON 轉 Properties 工具

把 JSON 物件轉換成 Java .properties 格式,支援巢狀物件展平與註解回填,純瀏覽器端運算。

貼上一份 JSON 物件,工具會在瀏覽器裡即時轉成 Java .properties 格式。巢狀物件預設會被展平成點號鍵名(也能關掉展平、保留原樣),如果 JSON 裡帶有 Properties 轉 JSON 工具產生的 $comments 欄位,對應的註解會以 # 開頭的行回填到相應鍵的上方。全程不連網,轉換完全在瀏覽器本機完成。

JSON 輸入

上傳

進階選項轉換清除

.properties 輸出

結果會顯示在這裡...

複製下載

結果會顯示在這裡...

關於 JSON 轉 Properties 工具

這是 Properties 轉 JSON 的反向操作:接收一份 JSON 物件——不管是扁平還是巢狀的——產生一份相容 java.util.Properties#load 的 Java .properties 檔案。開啟點號鍵名展平後,像 { "server": { "port": 8080 } } 這種巢狀物件會變成 server.port=8080 這樣的點號鍵名;關掉這個開關就要求輸入的 JSON 本身已經是扁平的。如果 JSON 裡帶有 $comments 物件(例如直接貼上 Properties 轉 JSON 的輸出結果),每一條都會以 # 註解行的形式寫回到對應鍵的正上方,讓兩個工具來回轉換也不會弄丟檔案原本的說明文字。

你可能還需要

Properties 轉 JSON

將 Java .properties 檔案無損轉換為巢狀 JSON。

開啟工具

JSON 轉 Env

將 JSON 物件轉換為 .env 的 KEY=VALUE 格式,並攤平點號鍵。

開啟工具

JSON 格式化和驗證器

格式化、驗證和視覺化 JSON 資料。

開啟工具

YAML 轉 JSON

將 YAML 轉換為 JSON 或將 JSON 轉換為 YAML。

開啟工具

貼上一份 JSON 物件,工具會在瀏覽器裡即時轉成 Java .properties 格式。巢狀物件預設會被展平成點號鍵名(也能關掉展平、保留原樣),如果 JSON 裡帶有 Properties 轉 JSON 工具產生的 $comments 欄位,對應的註解會以 # 開頭的行回填到相應鍵的上方。全程不連網,轉換完全在瀏覽器本機完成。

如何把 JSON 轉換成 .properties

  1. 1

    貼上 JSON 物件

    把 JSON 物件輸入到輸入欄,或點燒瓶圖示載入一份帶巢狀物件的範例。

  2. 2

    選擇展平方式與註解行為

    打開進階選項可以設定點號鍵名的分隔符或關閉展平,還能選擇 $comments 欄位要寫回成 # 註解行還是直接忽略。

  3. 3

    按下「轉換」

    JSON 會被展平(如果開啟這個選項),用專門理解 properties 格式的序列化器逐行寫成 key=value,有註解的話會回填到對應鍵上方。

  4. 4

    複製或下載 .properties 檔案

    複製輸出結果,或下載成一份可以直接放進 Java 資源目錄的 .properties 檔。按切換方向圖示可以跳回 Properties 轉 JSON。

參考資料

相關開發者工具

JSON 轉 Properties 常見問題

要怎麼線上把 JSON 轉成 Java .properties 檔案?
把 JSON 物件貼到輸入欄,按下「轉換」。每個頂層鍵都會變成一行 key=value,巢狀物件預設會被展平成點號鍵名。複製結果,或下載成 .properties 檔。
可以把巢狀的 JSON 物件轉成 .properties 格式嗎?
可以。開啟「點號鍵名 → 巢狀」後,像 { "app": { "name": "MyApp" } } 這種巢狀物件會被展平成 app.name=MyApp。關掉這個開關就只接受本身已經是扁平結構的 JSON。
輸出結果跟 java.util.Properties 相容嗎?
相容。.properties 的輸出是用專門理解 properties 檔案格式的序列化器產生,鍵和值都遵循 java.util.Properties#load 期望的慣例,包含標準的 = 分隔符。
轉換成 .properties 時我的 JSON 會被上傳嗎?
不會。所有解析和格式化都在瀏覽器裡用 JavaScript 本機完成,不涉及任何跟你的資料相關的網路請求。
JSON 轉 Properties 支援註解嗎?
如果你的 JSON 裡帶有 $comments 物件(例如直接從 Properties 轉 JSON 的輸出貼過來),每一條都會以 # 註解行的形式回填到對應鍵上方。想只輸出純粹的 key=value,可以到進階選項把「註解」設成「忽略」。
展平巢狀 JSON 鍵名時用的是什麼分隔符?
預設分隔符是點號(.),對應 app.cache.ttl 這類標準的 Java properties 命名習慣。如果你的 properties 檔案用別的慣例,可以在進階選項修改分隔符。
布林值和數字在 .properties 輸出裡是怎麼寫的?
JSON 裡的布林值和數字會按原樣的純文字形式寫出——true、false 或數字本身,這樣 Properties 轉 JSON 工具開啟型別推斷讀回去的結果才對得上。