在 CSV 與 JSON 之間互相轉換
這個轉換工具的用途
CSV 與 JSON 是用兩種不同形態描述同一份表格資料。CSV 檔案就是一張表格:第一列通常標示欄位名稱,之後每一列都是一筆記錄,欄位值以分隔符號隔開。JSON 則把同一張表格包進結構裡,多半是一個陣列,每一列都變成一個物件,鍵取自欄位名稱。這個工具會讀取你貼上的格式,判斷是哪一種,再改寫成另一種。
轉換是雙向的。輸入 CSV 就得到一組 JSON 物件陣列;輸入 JSON 就取回以分隔符號隔開的列。由於判斷依據是實際內容而非副檔名,你可以貼上片段後直接看結果。
什麼時候用得上
最常見的用途是在試算表與 API 之間搭橋。把工作表匯出成 CSV,轉成端點所需的 JSON 承載;或是把 JSON 回應排成一列一列,方便在 Excel 或 Google 試算表中開啟。若要以 CSV 匯出檔為資料庫填入初始資料,或想把不熟悉的資料集切換到自己較好讀的形態來檢視,同樣派得上用場。
列數與欄數會即時顯示,搭配檔案大小與處理時間,讓你迅速判斷輸出是否符合預期。
範例:從列到物件
假設標題列是 name,age,city,後面接著 John,25,Seoul 與 Jane,30,Tokyo。轉成 JSON 後會得到一個含兩個物件的陣列:{"name":"John","age":"25","city":"Seoul"} 與 {"name":"Jane","age":"30","city":"Tokyo"}。標題列的每個儲存格會變成鍵,每一筆資料列則變成一個物件。反方向轉換時,這些物件又會摺回成一列標題加上每筆記錄一列的形態。
注意事項與特殊情況
第一列會被當成提供鍵名的標題列;若檔案一開始就是資料,請關閉 Has Header 選項。分隔符號會自動偵測,但當檔案含糊不清時,你可以指定逗號、分號、Tab 或直線來固定。含有分隔符號或換行的值,會透過引號保持完整。當 JSON 內含巢狀物件時,Flatten Objects 選項決定是否把它們展開成個別欄位,而 Array Handling 則控制清單要以分號串接,還是拆成不同欄位。要留意 CSV 沒有型別系統,因此像 25 這樣的數字若不事後另行轉換,會以字串形式輸出。