CSV 格式講解 + 常見問題
更新 2026-07-06
CSV 是試算表和資料匯出的通用語言 —— 簡單到能在文字編輯器裡打開,凡是接觸表格資料的工具都支援它。但這份簡單藏著幾個出人意料地常見的陷阱,能把乾淨的匯出變成一團糟。這裡講講 CSV 到底如何運作,以及如何避開常見問題。
CSV 是什麼
CSV 是 comma-separated values(逗號分隔值) 的縮寫。每一行是一筆記錄,而在一行之內,逗號分隔各欄。第一行通常是給每欄命名的表頭。
name,email,age Ada Lovelace,ada@example.com,36 Alan Turing,alan@example.com,41
全部就這些 —— 而這恰恰是邊界情況會咬人的原因。
常見問題
值裡的逗號
如果值本身含有逗號,比如 Lovelace, Ada?沒有規則,那一個欄位就會看著像兩欄。解決辦法:把含逗號的欄位用雙引號括起來。
"Lovelace, Ada",ada@example.com,36
值裡的引號
帶引號欄位內部的雙引號,透過把它寫兩遍來跳脫:"She said ""hi""" 表示 She said "hi"。
值裡的換行
只要加了引號,欄位甚至能包含換行 —— 這正是手工剖析 CSV 時不能總假設「一行 = 一筆記錄」的原因。
分隔符不總是逗號
在逗號作小數點分隔符的地區,試算表常改用分號(;)或 Tab 匯出。如果一個檔案打開後成了一大欄,通常就是分隔符不匹配。
編碼與 BOM
CSV 不攜帶編碼資訊,所以若讀取方猜錯,帶重音的字元就會亂碼 —— 請存為 UTF-8。有些程式還會在開頭加一個看不見的位元組順序標記(BOM),它可能弄壞第一個欄表頭。(原因見我們的 字元編碼 指南。)
處理 CSV 資料
因為 CSV 就是一行行文字,純文字工具能完成大量整理:用 行排序 工具把行排好序,用 刪除重複行 去掉重複,用 文字對比 精確看清兩次匯出之間改了什麼。若要做結構化轉換,先把資料轉成 JSON 往往是更乾淨的路徑。
更多 資料格式與編碼
查看全部 資料格式與編碼 指南 →本指南提到的工具