在日常工作中,我们经常会用 WPS 表格 打开和编辑 .csv 文件。但如果你是在 Windows 环境中编辑,而随后又要在 WSL2(Linux 子系统) 或其他基于 Linux 的环境中使用同一个文件,就有可能遇到 乱码或无法正确解析 的问题。
这通常是由于 字符编码不一致 导致的。
WPS 在 Windows 下保存 CSV 文件时,默认会使用 GBK 编码(即简体中文 Windows 的系统默认编码)。
而 Linux 系统下的工具(如 Python、Pandas、shell 脚本、MySQL 等)通常期望 CSV 文件是 UTF-8 编码。 当 GBK 文件在这些环境中被当作 UTF-8 解读时,就会出现乱码。
要让文件在 WSL2 或 Linux 环境中正确显示,可以手动将 CSV 文件从 GBK 转为 UTF-8,并处理换行符格式。
以下是推荐的两步命令行方案:
bash# 1️⃣ 将文件从 GBK 转为 UTF-8 编码
iconv -f GBK -t UTF-8 input.csv -o output.csv
# 2️⃣ 将 Windows 换行符(CRLF)转换为 Linux 格式(LF)
dos2unix output.csv
执行完以上命令后,生成的 output.csv 就是 UTF-8 编码 且 Linux 格式换行符 的文件,
在 WSL2、Python、MySQL 等环境中都可以正常读取和解析。
| 项目 | Windows 默认 | Linux 推荐 |
|---|---|---|
| 字符编码 | GBK | UTF-8 |
| 换行符 | CRLF (\r\n) | LF (\n) |
在跨平台协作中,建议:
本文作者:AllenZ
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!