简要引言
日常所说的 CSV 是一张按分隔符拆列的文本表,但文件不一定真的使用英文逗号。中文变成 鍧、䏿–‡ 或连续问号,通常是编码识别错误;整行内容挤在一列,则多半是分隔符不对。文件大多没有损坏,关键是不要反复双击,而是通过 Excel 的导入功能明确指定编码、分隔符和数据类型。
适用设备与系统版本
- 主要适用于 Windows 10/11 上的 Microsoft Excel 2019、Excel 2021 或 Microsoft 365。
- WPS 表格也可完成相同操作,不同版本的菜单名称可能略有变化。
- macOS 版 Excel 通常从“数据”菜单进入,名称多为“获取数据”或“自文本/CSV”。手机版对编码和分隔符的控制较少,建议优先在电脑端处理。
先判断乱码属于哪一类问题
- 发现乱码后先关闭预览窗口,不要把当前结果直接保存覆盖原文件。
- 进入导入预览窗口观察:中文内容异常是编码问题;每一行只落在一列是分隔符问题;手机号变成科学计数法或前导零消失,则是数据类型问题。
- 如果文件来自系统导出,优先向导出方确认编码和分隔符。常见编码是 UTF-8,较早的系统或软件可能使用 GBK、GB18030;常见分隔符则是逗号、分号和制表符。
用 Microsoft Excel 按编码重新导入
- 打开一个空白工作簿,依次点击“数据”→“自文本/CSV”→“从文件/文本/CSV”,再选择 CSV 文件。不同版本也可能直接显示文件选择窗口。
- 在预览窗口左上角的编码下拉框中,英文界面通常显示为
File Origin。优先选择Unicode/UTF-8;如果导出方明确说明文件是 GBK 或 GB18030,就选择列表中对应的中文编码项。 - 再选择“分隔符”。可试“逗号”“分号”“制表符”或“竖线”,并观察每一行是否正确落入各列。不要只看第一屏,还要向下检查几行。
- 对手机号、身份证号、订单号、邮编等字段,点击“转换数据”。在 Power Query 编辑器中选中相应列,通过“开始/主页”→“转换数据类型”→“文本”设为文本,再执行“关闭并加载”或“关闭并上载”。不同版本措辞可能不同。
- 如果切换 UTF-8 后中文仍异常,不要继续保存,直接回到编码下拉框尝试其他编码,并在预览窗口判断结果。
按分隔符重新拆列
- 再次从“数据”→“自文本/CSV”导入文件,在预览窗口手动指定分隔符。即使扩展名是
.csv,实际也可能使用分号或制表符。 - 常用选项无法识别时,可点击“转换数据”,在 Power Query 中选中错成一列的字段,使用“拆分列”→“按分隔符”,再选择自定义字符。
- 遇到分号分隔且数值带小数逗号的文件,不要直接用替换功能把所有分号改成逗号,否则字段内部的逗号和引号内容可能被破坏。
- 加载前确认每一列的内容都与原表一致,尤其检查空字段、带引号的逗号字段和跨行文本。
老版 Excel 与 WPS 的替代操作
- 老版 Excel 可点击“数据”→“从文本”;Microsoft 365 中也可在“从文本/CSV”菜单里寻找“从文本(旧版)”。
- 向导第一步选择“分隔符号”,将文件原始格式设为 UTF-8 或中文系统对应的 ANSI/GBK;第二步勾选实际使用的分隔符;第三步可把编号、手机号等列的数据格式设为“文本”。
- WPS 表格通常点击“数据”→“导入数据”→“从文本/CSV”,旧版菜单可能直接显示“从文本文件”。
- 在 WPS 的预览窗口选择 UTF-8、GBK、GB18030 或 ANSI,并指定逗号、分号、制表符等分隔符,确认预览正常后再导入。
仍然乱码时这样排查
- 不确定编码时,可依次试 UTF-8、GB18030、GBK 和 ANSI,每次只看预览结果。简体中文 Windows 中的 ANSI 往往对应 GBK,但并非所有电脑都相同。
- 如果导出程序可以重新生成文件,让它选择“UTF-8 带 BOM”或“CSV UTF-8(逗号分隔)”。BOM 对旧版 Excel 的自动识别更友好。
- 如果文件已被错误编码后再次保存,原始字符可能已经发生变化。此时反复切换编码通常无法恢复,应向数据提供方重新导出原文件。
正确保存和再次发送
- Microsoft 365 可使用“文件”→“另存为”→“浏览”,保存类型选择“CSV UTF-8(逗号分隔)(*.csv)”。
- CSV 只保存单张表的数据,不保留多工作表、复杂格式和部分公式信息。发送前应检查公式结果、空值和列顺序。
- 对手机号、长编号和带前导零的编号,应在导出前就按文本保存,避免接收方再次导入时丢失格式。
注意事项
- 不要用 Excel 的查找替换批量删除逗号、分号或引号,标准 CSV 允许字段内部出现分隔符,解析器会按引号规则处理。
- 超过 15 位的纯数字如果已被 Excel 当作数值处理,精度可能丢失。发现这种情况应重新从原文件导入,并把该列设为文本。
- 调试时始终保留原文件副本,只在新工作簿中导入和另存,避免覆盖后无法判断最初的编码。
- 同一文件在 WPS 中正常、在 Excel 中乱码,通常是两者默认编码和解析方式不同,使用上述导入预览统一指定即可。
小结
处理 CSV 乱码的核心只有三项:先在预览窗口选对编码,再选对分隔符,最后把编号类字段设为文本。不要反复双击试错;来源明确时优先使用 UTF-8,旧文件则根据实际情况选择 GBK 或 GB18030。






