🌐 ZH-TW

🔄 YAML ↔ JSON / CSV 轉換器

雙向轉換 YAML 與 JSON。可將設定檔(docker-compose、GitHub Actions、k8s manifests)轉成 JSON 以便程式化檢視,或將 JSON 轉成易讀的 YAML。JSON↔CSV 分頁會將平面陣列資料轉為可直接匯入試算表的 CSV。

指南

瞭解更多

01

1. 何時使用 YAML 與 JSON

JSON 針對機器對機器的資料交換(API 回應、已儲存設定)做了最佳化,它的嚴格語法能降低解析時的驚訝。YAML 以縮排為基礎,支援註解(#),並且較易讓人閱讀,所以在設定檔領域廣泛使用:docker-compose.yml、GitHub Actions workflows、Kubernetes manifests、Ansible playbooks。可用這個工具將 YAML 設定轉為 JSON 以利程式化處理,或將 JSON 資料轉為整齊、易讀的 YAML。

02

2. 轉換注意事項

YAML 可表達的內容多於 JSON:錨點(&)、別名(*)、多文件分隔符(---)與區塊純量(|、>)。將含有這些特性的文件轉為 JSON 時,會將錨點/別名展開為其原始值,且只會轉換第一份文件。JSON→YAML 則始終安全,因為 JSON 幾乎是 YAML 的子集合。請注意外觀像數字的字串(例如郵遞區號 "01234")——若未加上引號,YAML 可能會把它解讀為數字。

03

3. JSON ↔ CSV 與巢狀結構

CSV 只能表示表格(列與欄位),因此不能直接承載 JSON 的巢狀物件或陣列。此工具會自動把巢狀物件展平成像 "user.name"、"user.age" 這樣的點記號欄位,CSV→JSON 則會依據這些點記號欄位標題還原原始巢狀結構。陣列值(例如標籤清單)會以原始 JSON 字串存放在儲存格中——透過本工具來回轉換,比在試算表手動編輯更安全。

常見問題

支援哪些 YAML 語法?
我們使用 js-yaml 函式庫,支援標準 YAML 1.2 語法(映射、序列、純量、註解、錨點/別名、區塊純量、多種資料型別),可覆蓋大多數實際設定檔語法。
JSON→CSV 時,巢狀物件會怎麼處理?
會自動展平成 "parent.child" 的點記號欄位。例如 {"user":{"name":"Kim"}} 會變成一個 "user.name" 欄位,值為 "Kim"。
我可以將含有陣列的 JSON 轉為 CSV 嗎?
最上層必須是物件陣列(例如 [{"a":1}])。每個物件內的陣列值(例如標籤清單)會以原始 JSON 字串存放在儲存格中。
我的資料會傳到伺服器嗎?
不會。所有轉換都在您的瀏覽器中完全完成(JavaScript),您輸入的任何內容都不會傳送到伺服器。