乱码的原因以及恢复

在前文 系统梳理unicode与编码方式 中简单提及了解析错误这种造成乱码的原因,下文详细说明一下几种原因。

解析错误

  • 简单情况
    • 使用错误的编码方式解析二进制数据
  • 例:法国人用 Windows-1252 编码写文件,中国人用 GB18030 解析
  • 解决方法
    • 使用正确的编码方式解读
    • 切换查看编码方式只改变了解析方式,不改变二进制数据本身

错误的解析和编码转换

  • 复杂情况
    • 在解析错误的基础上,进行了错误的编码转换
  • 例:法国人用 Windows-1252 编码写文件,中国人用 GB18030 解析,然后转成了 UTF-8
  • 特点
    • 切换查看编码方式无效,仍然乱码
    • 多次解析和转换错误难以恢复
  • 解决方法

关联文章


文章作者: huan
版权声明: 本博客所有文章除特別声明外,均采用 CC BY-NC-ND 4.0 许可协议。转载请注明来源 huan !
  目录