跳到正文
馬克工具箱

JSON 轉 CSV

把介面返回或資料庫匯出的 JSON 陣列轉換成 CSV 檔案,用 Excel、WPS 或 Google 表格直接開啟。巢狀欄位會展開成 address.city 這樣的列,所有行出現過的欄位都會成為列,逗號、引號、換行都會正確轉義。

在瀏覽器本地執行,輸入的內容和檔案都不會上傳

JSON → CSV
輸出 (CSV)

使用步驟

  1. 貼上由物件組成的 JSON 陣列(單個物件也可以)。
  2. 選擇分隔符,一般用逗號。
  3. 如果要用 Excel 開啟且包含中文,勾選「新增 BOM」。
  4. 複製 CSV,或下載為 .csv 檔案。

引數說明

巢狀物件
展開為用點連線的列名:{"address":{"city":"北京"}} 會變成 address.city 列。
行內陣列
以 JSON 文字形式寫在一個單元格里,例如 [1,2,3],不會丟失資料。
欄位缺失
列是所有行欄位的並集,按首次出現的順序排列;某行缺少的欄位留空。
BOM
位元組順序標記,告訴 Excel 檔案是 UTF-8 編碼。不加的話,Windows 上的 Excel 開啟會出現中文亂碼。

示例

JSON:

[{"id":1,"name":"張三","address":{"city":"北京"}},{"id":2,"name":"李四, 經理","tags":["銷售","華東"]}]

CSV:

id,name,address.city,tags
1,張三,北京,
2,"李四, 經理",,"[""銷售"",""華東""]"

常見問題

用 Excel 開啟中文亂碼怎麼辦?

Excel 預設按本地舊編碼(GBK)讀取 CSV,除非檔案以 UTF-8 BOM 開頭。勾選「新增 BOM」後重新下載即可。WPS 通常能自動辨識。

為什麼所有內容都擠在一列裡?

分隔符和 Excel 的區域設定不一致。可以換一個分隔符,或在 Excel 中通過「資料 → 從文字/CSV」匯入並手動選擇分隔符。

值裡面有逗號或引號怎麼辦?

按照 RFC 4180 規範,包含逗號、引號或換行的值會用雙引號包起來,內部的引號會寫成兩個。

有行數限制嗎?

沒有固定限制,幾萬行資料在瀏覽器裡一兩秒就能轉換完。Excel 本身最多支援 1,048,576 行。

隱私說明

本工具完全在瀏覽器中執行,檔案和文字都在你的裝置上處理,不會上傳到我們的伺服器。

相關工具