字符编码转换・乱码自动修复

粘贴乱码文本,自动检测导致乱码的编码组合并给出修复候选。同时支持在UTF-8・Shift_JIS・EUC-JP・JIS(ISO-2022-JP)之间进行明确指定的转换。

使用提示

  • 出现多个候选时,标有「最佳候选」标签、看起来最自然的日文或ASCII文本通常就是正确答案。
  • 邮件和CSV文件中常见的「縺薙繧薙?...」这类乱码,几乎都能通过UTF-8→Shift_JIS的组合解决。
  • 若文本变成连续的「?」或「�」,说明原始字节序列可能已部分丢失,仅从字符串层面很难完全还原。
  • 如果已知导致乱码的编码组合,可在「手动指定转换」标签中一步完成转换查看结果。

常见问题

当保存文本时使用的编码与读取方假定的编码不一致时就会出现乱码。日文尤其容易出现这种情况,因为UTF-8、Shift_JIS、EUC-JP三种编码目前都在使用,彼此之间的假定不一致是乱码的主要原因。

不能。根据乱码类型的不同,原始字节序列的部分信息可能在最初的(错误)解码过程中就已丢失,仅凭字符串本身无法完全还原。尤其是当一种日文多字节编码被误读为另一种时,还原会非常困难,变成「?」或「�」的部分基本无法恢复。

目前最普及的编码是UTF-8,但一些较旧的日本系统和部分传统Windows应用程序仍然默认使用Shift_JIS。由于UTF-8中日文字符的字节序列往往恰好也是有效的Shift_JIS字节序列,因此信息不会丢失,这正是这种特定错配通常可以被还原的原因。

不会。所有转换处理均在浏览器本地的JavaScript中完成,因此即使文本中包含密码或个人信息也可以安全使用。
ツールくん

闲话 ― 为什么「縺薙繧薙?縺ォ縺。縺ッ」成了日文乱码的代名词

搜索日文乱码几乎必定会遇到「縺薙繧薙?縺ォ縺。縺ッ」(本应显示为「こんにちは」,即「你好」)这一字符串,它在日本网民之间已经成为一种文化符号。这是将UTF-8编码的文本在假定为Shift_JIS的应用程序(例如旧版Windows记事本或部分传统系统)中打开时出现的典型乱码模式。

这种组合之所以如此常见,是因为Shift_JIS解码器会强行将UTF-8中日文字符使用的3字节序列,重新解释为2字节的Shift_JIS字符。碰巧大部分被重新解释后的字节序列恰好落在有效的Shift_JIS字符范围内,因此不会报错——文本看起来乱码,实际上却完全可以还原。正是这一特性,使得本工具这类自动修复能够以较高概率成功。

相比之下,将Shift_JIS文本按EUC-JP打开的组合,往往会产生无效字节序列而被直接丢弃,信息在那一瞬间就已损毁,从字符串层面进行还原也就成为原理上不可能之事。日文字符编码问题长期困扰工程师,正是因为「可还原的乱码」与「不可还原的乱码」长期混杂在一起。