从‘烫烫烫’到乱码:一次搞懂Windows/Linux/macOS下的中文编码问题(GBK/UTF-8避坑指南)
你是否曾在Windows记事本保存的文档,到Linux终端打开时变成了一堆问号?或是从macOS导出的CSV文件在Excel中显示为乱码?这些令人抓狂的"烫烫烫"和"锟斤拷"背后,隐藏着字符编码的世纪难题。本文将带你穿越GBK与UTF-8的迷雾,用实战案例拆解跨平台乱码的终极解决方案。
1. 乱码现场:一个真实案例的深度剖析
某数据分析师小王遇到了这样的场景:在Windows 10上用记事本保存的"销售报告.txt",通过FTP上传到CentOS服务器后,用cat命令查看时中文全部变成"������"。而用vim打开时底部却显示"CONVERTING FROM GBK"的提示。
诊断三板斧:
# 查看文件真实编码类型
file --mime-encoding sales_report.txt
# 统计字符异常情况
grep -P -n "[^\x00-\x7F]" sales_report.txt | head -5
# 实时转换编码测试
iconv -f GBK -t UTF-8 sales_report.txt | head -3
这个案例揭示了三个关键问题:
- Windows记事本默认使用GBK编码保存文件
- Linux终端通常配置为UTF-8环境
- 文件传输过程没有执行编码转换
2. 编码进化论:从ASCII到Unicode的时空穿越
要理解乱码本质,我们需要回到计算机处理文字的起点:
| 编码标准 | 诞生时间 | 核心特点 | 典型问题 |
|---|---|---|---|
| A |

&spm=1001.2101.3001.5002&articleId=98280349&d=1&t=3&u=fedf08c4ecf44d55a5a4676884f0477b)
673

被折叠的 条评论
为什么被折叠?



