乱码医生
café、don’t、über —— 这些都是经过了错误解码器的文本。把乱码粘进来,即刻找回原文,并获知当初究竟是哪一步发生了混淆。
🔒 你的文本不会离开浏览器 —— 全程在本地内存中还原。
你的文本到底经历了什么
你的数据原本是以 UTF-8 存储的,其中任何非 ASCII 字符都由两个或更多字节构成。某些软件随后读取了这些字节,却误以为每个字节都是单字节编码中的一个独立字符 —— 通常是 CP1252(Windows 默认)或 ISO-8859-1。于是 é 的两个字节变成了 é 两个字符,整份文件依此类推。
在这个混淆过程中,原始字节并未丢失,这也是它能被精确还原的原因:先用当初那个错误的单字节编码把字符编码回原始字节,再把这些字节按 UTF-8 正确解码即可。
为什么查表工具做不到的这里能做
市面上多数「乱码修复工具」内置了一张替换对照表 —— é → é、’ → ’ —— 遇到表里没有的字符就束手无策。本工具没有表。它在底层真实反向执行编码链,因此无论是日文、希腊文、Emoji 还是生僻符号,都能一视同仁地修复。并且工具会自我校验:把修复后的文本再次推入那条损坏链,只有当它能逐字精准复现你的输入时,才会推荐给你。
双重嵌套编码
当文件经过两次相同的错误转换时,损坏会嵌套加深:é → é → é。单次修复只能让它看起来稍微好一点点。本工具会自动尝试多层解构,并明确告诉你它解开了几层。
唯一无法修复的情况
如果你看到了 (U+FFFD 替换字符),说明解码器在处理那些字节时已经放弃并填入了占位符。原始字节已经彻底丢失 —— 没有任何工具能够凭空找回它们,声称能做到的都是胡乱猜测。遇到这种情况,只能从源头重新导出文件。
修链路,而不仅是修文本
修复字符只能救急今天的文件。当初弄坏它的导入流程明天还会继续损坏新的文件,因此趁现在去把那个软件的导入编码明确配置为 UTF-8 才是根本之策。
本工具报告的内容(共 6 项检查)
MOJ-D01UTF-8 文本被当作单字节编码读取
最经典的乱码:以 UTF-8 存储的文本被当作 CP1252 或 ISO-8859-1 读取。每个非 ASCII 字符都裂解为两个或三个拉丁字符 ——「café」变成了「café」,撇号变成了「’」。
修复: 修正读取方而非仅修改文本:明确告知导入工具该文件是 UTF-8 编码。仅修复字符能救急,但下一次导入仍会继续损坏新文件。
来源: 依据的是 UTF-8 以及它常被误读成的单字节编码(CP1252、ISO-8859-1)的工作机制。修复是实际执行出来的,不是查表查出来的;在我们的回归测试里,每一次修复都能往返还原成输入。
MOJ-D02双重嵌套编码的 UTF-8
文本经历了两次相同的错误读取,损坏已层层嵌套 ——「é」先变成「é」,接着又变成「é」。单层修复无法彻底还原。
修复: 需要解开对应层数的编码;本工具已为你报告检测到的嵌套层数。
来源: 依据的是 UTF-8 以及它常被误读成的单字节编码(CP1252、ISO-8859-1)的工作机制。修复是实际执行出来的,不是查表查出来的;在我们的回归测试里,每一次修复都能往返还原成输入。
MOJ-D03文本中含有 U+FFFD 替换字符
U+FFFD( 符号)意味着解码器此前在遇到未知字节时已经放弃并替换了占位符。这与常规乱码不同,是不可逆的 —— 原始字节已经不复存在。
修复: 从源头使用正确的编码重新导出文件。任何工具都无法从替换字符中推算回原始字符。
来源: 依据的是 UTF-8 以及它常被误读成的单字节编码(CP1252、ISO-8859-1)的工作机制。修复是实际执行出来的,不是查表查出来的;在我们的回归测试里,每一次修复都能往返还原成输入。
MOJ-D04未检测到编码损坏特征
文本中未发现符合编码混淆特征的字符序列。
来源: 依据的是 UTF-8 以及它常被误读成的单字节编码(CP1252、ISO-8859-1)的工作机制。修复是实际执行出来的,不是查表查出来的;在我们的回归测试里,每一次修复都能往返还原成输入。
MOJ-R01修复方案通过往返自证
建议的修复结果在重新通过同一损坏链后能逐字精准复现输入文本,证明这是真实的编码链路,而非查表猜测。
来源: 依据的是 UTF-8 以及它常被误读成的单字节编码(CP1252、ISO-8859-1)的工作机制。修复是实际执行出来的,不是查表查出来的;在我们的回归测试里,每一次修复都能往返还原成输入。
MOJ-R02检测到损坏特征但无法修复
文本表现出典型的乱码特征,但没有任何单字节编码链能精准复现它 —— 通常是因为它此前已被部分修剪过、混合了干净文本,或是由本工具未建模的非主流编码造成的。
修复: 返回原始文件重新导出为 UTF-8,不要尝试修补已残缺的副本。
来源: 依据的是 UTF-8 以及它常被误读成的单字节编码(CP1252、ISO-8859-1)的工作机制。修复是实际执行出来的,不是查表查出来的;在我们的回归测试里,每一次修复都能往返还原成输入。
关于这些规则。 每一条都有编号、严重级别和通俗解释。每个来源链接都已登记在案,并对线上页面实际复验过,而不是凭印象写上去的. 规则如何编写、测试与保持更新 →