JSON 轉 Excel 轉換器

線上把 JSON 轉成 Excel:免費、即時、私密。檔案在你的瀏覽器內處理,不上傳伺服器。

結果

轉換後的檔案和預覽會顯示在這裡。

已準備好。選擇一個表格檔開始轉換。

轉換原理

  • 物件陣列會轉成列和欄;巢狀物件會攤平成點號欄,例如 address.city。
  • 表格會寫成單個工作表的純數值——不含公式、樣式或多個工作表。

表格檔會在你的瀏覽器本機轉換,不會上傳到 BroBroGo。

常見問題

JSON 怎麼轉成 Excel?

拖入 JSON 檔案,點擊轉換,幾秒就能下載 Excel 檔案,還附結果預覽,全程在本機完成。

檔案最大能轉多大?

單個檔案最多 8 MB、10,000 列、200 欄。數據量更大時,建議先拆分成小檔案。

JSON 轉 Excel(XLSX)工具:扁平化巢狀數據的真實原理

將 JSON 檔案轉換成 Excel(XLSX)工作表的過程,表面上只是格式轉換,實質上牽涉到數據結構的根本改變。JSON 原生支援物件、陣列、數值、布林值與 null,這種層級式(hierarchical)結構並不能直接對應到二維的試算表。這個工具的核心任務,就是將巢狀 JSON 扁平化為一張平坦表格:物件鍵值變成欄位標題,物件陣列變成列,而內嵌的鍵值會以點路徑(dot‑path)展開(例如 address.city)。轉換結果會先預覽,然後可下載成 .xlsx 檔案。

與 CSV 或 Excel 轉換不同,JSON 來源本身不是平坦的,所以「扁平化」是必經步驟。此外,目標格式 XLSX 是一個壓縮的 XML 活頁簿,能原生儲存數字與布林值類型,不會像 CSV 那樣把所有內容降級為文字。不過要注意:這個工具不會保留任何公式或儲存格樣式,只寫入 JSON 中的靜態數據。

JSON 的巢狀結構與扁平化規則

JSON 物件可以任意嵌套,例如:

{
  "name": "Alice",
  "address": {
    "city": "Hong Kong",
    "district": "Central"
  },
  "scores":
}

當轉換為試算表時,工具會將物件陣列視為列。如果 JSON 是一個物件陣列(例如 API 回傳的列表),每個物件對應一行。物件內部的鍵值會形成欄位,而巢狀物件的鍵會以點串接。以上例而言,會產生欄位 nameaddress.cityaddress.district。陣列 scores 怎麼辦?如果陣列本身不是物件,處理方式取決於 JSON 的頂層結構。

工具只處理第一個工作表,不會產生多個分頁。若 JSON 頂層是陣列的陣列(例如 ``),則直接視為表格式的列與行,不展開任何鍵名。

數據類型的保留:XLSX 如何勝過 CSV

CSV 會將所有數據都轉換為文字,因此數值 100 與字串 "100" 在 CSV 中無法區分。XLSX 則不同:它是一個 Open XML 格式的壓縮檔(副檔名 .xlsx 其實是 ZIP 容器),內部儲存了每個儲存格的數據類型(string、number、boolean、error、empty)。這個工具在轉換時,會將 JSON 中的數字(整數或浮點數)直接寫入 XLSX 的數值儲存格,布林值 true/false 寫入布林儲存格,null 則寫入空值(空的儲存格)。這對數據分析非常關鍵——在 Excel 中打開後,數字可以直接做加總,布林值可參與條件判斷,而不必先轉型。

但這也帶來一個陷阱:JSON 中的字串數字(例如 "123")仍會以文字型態寫入,因為工具嚴格遵守 JSON 的型別。使用者若預期自動轉型,可能產生不一致。另外,工具不支援公式,也沒有任何樣式或合併儲存格。

規範與限制:必須知道的錯誤訊息

轉換過程完全在瀏覽器端執行(client‑side),不經伺服器,保障數據私隱。但仍有嚴格限制:

  • 檔案類型:此頁面僅接受單一 JSON 檔案,副檔名須為 .json。若選錯檔案類型,會出現「Choose a CSV, JSON or XLSX file.」
  • 格式要求:JSON 必須是「表狀」(table‑shaped)——頂層必須是物件陣列或陣列的陣列。若 JSON 是一個純物件或純值,會顯示「This JSON is invalid or not table‑shaped.」
  • 空數據:若 JSON 陣列長度為 0,顯示「This file has no table rows.」
  • 規模限制:檔案最多只能有 10,000 行和 200 列。若超出上限,會分別提示「This table has more than ‹max› rows.」或「This table has more than ‹max› columns.」
  • 檔案大小:檔案大小上限為 8 MB。過大則提示「This file is too large. Use a file under ‹max›.」
  • 逾時機制:若轉換超過約 12 秒,工具會中斷並顯示「This conversion is taking too long. Try a smaller file.」
  • 取消操作:使用者可手動取消,出現「Conversion cancelled.」

誰需要這個工具?實際應用場景

  • API 數據分析員:從 REST API 取得 JSON 回應(通常巢狀很深的物件陣列),要匯入 Excel 做樞紐分析或圖表。手動寫程式展開巢狀結構費時,此工具一鍵完成。
  • 配置管理人員:將系統設定檔(JSON 格式)轉為試算表供團隊成員檢視,保留數值型別避免誤解。
  • 協作需求:團隊內非技術成員只會用 Excel,接收 JSON 檔案後無法直接閱讀。提供扁平化的 XLSX 表格是最低門檻。
  • 數據匯入前處理:某些數據庫工具或 BI 系統接受 XLSX 但不接受 JSON,需要先轉換。
  • 保留數值精確度:相比 CSV 會把 0.0001 變成字串,XLSX 能保留浮點數,適合科學數據。

常見問題 FAQ

Q: 如果 JSON 中有多層巢狀陣列(陣列內有陣列),會怎樣處理? A: 工具只會將頂層陣列視為列。內層陣列若位於物件內,其元素會以點路徑展開為多個欄位(例如 scores.0scores.1)。若內層陣列本身是另一個物件陣列,則不會再遞迴展開,只會將整個陣列序列化為文字,這可能導致數據丟失。因此,建議自行平鋪巢狀陣列後再上傳。

Q: 轉換後 Excel 內有大量空儲存格,正常嗎? A: 正常。由於 JSON 物件可能缺少某些鍵值,對應的欄位便會留空。XLSX 會以空的儲存格表示 null 或 undefined。

Q: 能否保留 JSON 的註解? A: JSON 規格不支援註解。工具不會解析任何非標準格式,註解會被當作語法錯誤。

Q: 轉換後的 XLSX 檔案有多大? A: 預覽畫面會顯示輸出檔案大小。一般而言,XLSX 採用壓縮 XML,體積通常小於原始 JSON(尤其是文字數據),但若含有大量數值,體積差異不大。

Q: 可以一次轉換多個 JSON 檔案嗎? A: 不可以。每次只能上傳一個檔案。若需合併多個來源,建議先自行合併成一個陣列再處理。

Q: 為什麼我的 JSON 裡面有布林值 false,但 Excel 顯示為「FALSE」文字? A: 這表示工具已將其正確寫入為布林值。Excel 預設顯示布林值為大寫 TRUE/FALSE(或與地區設定有關)。如果看到的是字串(左對齊),可能是 JSON 中的 "false"(加引號),那就會被當作文字儲存。請檢查 JSON 原始碼中的引號。