2025-11-12
文件编码与格式处理
0

目录

🧩 问题原因
🛠️ 解决方案
✅ 小结

在日常工作中,我们经常会用 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 推荐
字符编码GBKUTF-8
换行符CRLF (\r\n)LF (\n)

在跨平台协作中,建议:

  • 统一使用 UTF-8 编码
  • 避免直接在 WPS 中保存 CSV 文件
  • 或者使用如 VS Code、Notepad++ 等可自定义编码的编辑器进行保存。

本文作者:AllenZ

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!