大型 CSV · 實用指南
大型 CSV 檔案的分割方法
Excel 無法開啟的 CSV,可依資料筆數、目標大小或欄位值分割。本文簡要說明工具選擇與避免亂碼的方法。
結論:依分割條件選擇工具
小型的一次性檔案可用 Excel,重複的 Excel 作業可用 Power Query;要直接在瀏覽器分割 50MiB 以下 CSV,可使用 LocaCSV。大型檔案不適合靠複製貼上手動分割。
試用 CSV 分割模擬
切換分割方式,查看同一份 6 筆資料的範例 CSV 會產生哪些輸出檔案。
分割前:orders.csv
6 筆資料133B
| 訂單編號 | 門市 | 金額 |
|---|---|---|
| A001 | 台北 | 1200 |
| A002 | 台中 | 800 |
| A003 | 台北 | 1500 |
| A004 | 台中 | 600 |
| A005 | 台北 | 900 |
| A006 | 台中 | 1100 |
分割後
分成 3 個檔案
orders_001.csv
2 筆資料63B
| 訂單編號 | 門市 | 金額 |
|---|---|---|
| A001 | 台北 | 1200 |
| A002 | 台中 | 800 |
orders_001.csv2 筆資料63B
| 訂單編號 | 門市 | 金額 |
|---|---|---|
| A001 | 台北 | 1200 |
| A002 | 台中 | 800 |
orders_002.csv
2 筆資料63B
| 訂單編號 | 門市 | 金額 |
|---|---|---|
| A003 | 台北 | 1500 |
| A004 | 台中 | 600 |
orders_002.csv2 筆資料63B
| 訂單編號 | 門市 | 金額 |
|---|---|---|
| A003 | 台北 | 1500 |
| A004 | 台中 | 600 |
orders_003.csv
2 筆資料63B
| 訂單編號 | 門市 | 金額 |
|---|---|---|
| A005 | 台北 | 900 |
| A006 | 台中 | 1100 |
orders_003.csv2 筆資料63B
| 訂單編號 | 門市 | 金額 |
|---|---|---|
| A005 | 台北 | 900 |
| A006 | 台中 | 1100 |
大型 CSV 無法開啟的常見原因
CSV 雖然是純文字,開啟它的程式仍有限制。Excel 一張工作表最多 1,048,576 列,較小的檔案也可能因記憶體或資料結構而變慢。
- 資料列超過 Excel 工作表上限。
- 載入檔案時可用記憶體不足。
- 分隔符號或字元編碼選錯。
- 直接切割逗號或換行,破壞引號內的內容。
Excel、Power Query、Python、LocaCSV 比較
請依檔案大小、執行頻率及是否能維護程式碼選擇。
| 方法 | 適合情境 | 優點 | 注意事項 |
|---|---|---|---|
| Excel | 小型、只處理一次的檔案 | 介面熟悉 | 列數上限與手動錯誤 |
| Power Query | 重複執行 Excel 匯入 | 可重新執行既有步驟 | 輸出多個 CSV 需額外設定 |
| Python | 大型或定期作業 | 容易自動化 | 需維護環境與程式碼 |
| LocaCSV | 快速分割 50MiB 以下 CSV | 直接在瀏覽器使用 | 最多 100 個輸出;依值時限 1 欄 |
Excel
- 適合情境
- 小型、只處理一次的檔案
- 優點
- 介面熟悉
- 注意事項
- 列數上限與手動錯誤
Power Query
- 適合情境
- 重複執行 Excel 匯入
- 優點
- 可重新執行既有步驟
- 注意事項
- 輸出多個 CSV 需額外設定
Python
- 適合情境
- 大型或定期作業
- 優點
- 容易自動化
- 注意事項
- 需維護環境與程式碼
LocaCSV
- 適合情境
- 快速分割 50MiB 以下 CSV
- 優點
- 直接在瀏覽器使用
- 注意事項
- 最多 100 個輸出;依值時限 1 欄
使用 LocaCSV 分割的步驟
若預覽欄位錯位,請先修正分隔符號或字元編碼。
- 依筆數或大小時開啟 CSV 分割;依欄位值時開啟依值分割,然後選取一個 CSV。
- 確認標頭、編碼、分隔符號及預覽。
- 輸入每檔資料筆數或目標大小;依值畫面則選擇一個欄位。
- 分割後核對筆數,再下載 ZIP。
依欄位值分割的方法
依值分割會為選定欄位中的每個值建立一個 CSV。例如「門市」欄有台北、台中、高雄,就會產生三個檔案。
- 相同值的資料列會進入同一個輸出檔案。
- 空白值可排除或輸出到獨立檔案。
- 每次選擇 1 個欄位,最多輸出 100 個檔案。
資料筆數與檔案大小的注意事項
LocaCSV 接受一個 50MiB 以下的 CSV。實際速度仍會受到裝置、每筆長度及輸出數影響。
- 筆數模式不計標頭,只計算每個檔案中的資料列。
- 目標大小包含輸出編碼、BOM 與重複標頭,且不會切斷單筆資料。
- 保留原始檔,並在使用輸出前核對資料筆數。
字元編碼與亂碼處理
台灣舊系統常見 Big5,新系統多使用 UTF-8。Big5 需手動選擇;若預覽仍是亂碼,請先在本機轉成 UTF-8。
- 在預覽中檢查姓名、地址、全形標點與罕見字。
- 欄位錯位時先確認分隔符號。
- 不確定編碼時,確認來源系統的匯出設定。