Mojibake / 编码修复器
将 Café 或 don’t 这类乱码(mojibake)文本修复回 Café 和 don’t,就在你的浏览器中。
你的文本在浏览器本地完成修复,绝不会上传,但请避免将敏感的个人数据粘贴到任何在线工具中。
需要转义 HTML 特殊字符?试试 HTML 实体工具。
关于 Mojibake 修复器
这款 mojibake 修复器能修复由编码不匹配造成的乱码文本 —— 就是那种把「Café」变成「Café」、把「don't」变成「don’t」、把「😀」变成「😀」的情况。常见的元凶是 UTF-8 字节被错误地按 Windows-1252 或 Latin-1 解码,于是重音字母、弯引号、破折号和表情符号都变成了垃圾字符。修复器会反转这一过程:它将每个乱码字符映射回其原始字节,再将结果按 UTF-8 重新解码。由于不止一种不匹配可能,它会提供多种解读(UTF-8 ↔ Windows-1252、UTF-8 ↔ Latin-1,以及一次双重解码处理)并高亮最干净的那一种,同时允许你另选其他。在左侧粘贴文本,在右侧读取修复结果。一切都在你的浏览器中运行,因此你粘贴的文本留在你的设备上。
功能特性
- 修复最常见的 mojibake:被按 Windows-1252 或 Latin-1 解码的 UTF-8 字节
- 修复重音字母、弯引号、破折号、欧元符号以及损坏的表情符号
- 提供多个候选解读,并将最干净的修复标记为「最佳」
- 包含一次双重解码处理,用于被错误解码两次的文本
- 在你信任某个修复之前,标示输入是否确实看起来像 mojibake
- 实时输入与输出 —— 在左侧粘贴,在右侧读取修复后的文本
- 一键复制修复后的文本,或加载一个已知的乱码示例来试用
- 完全在你的浏览器中运行;你粘贴的文本在你的设备上处理
如何使用 Mojibake 修复器
- 将乱码文本粘贴到左侧的输入框中。
- 在右侧的「Fixed」输出面板中读取最佳修复。
- 浏览「Interpretations」列表,如果某个候选读起来更干净,就选它。
- 点击「复制」以获取修复后的文本。
示例
输入
Café — don’t panic
输出
Café — don’t panic
被错误地按 Windows-1252 解码的 UTF-8 文本,已修复回干净的字符。
常见错误与故障排除
- 修复把干净的重音文本变成了像「Cé」这样的新垃圾字符。 — 你的文本很可能本来就是正确的 UTF-8。请选择「Original」候选,或只对确实看起来像乱码的输入运行修复器。
- 一次处理后,某些字符仍然看起来损坏。 — 该文本可能被错误解码了两次。请选择双重解码的解读,它会将修复再应用一遍。
- 少数字符显示为黑色菱形问号 (�)。 — 那些字节在你粘贴之前就已丢失或被替换,无法恢复。请从原始来源以 UTF-8 重新导出该文本。
- 弯引号和破折号已修复,但仍有一个奇怪的符号残留。 — 请改用 Latin-1 解读而非 Windows-1252;两者仅在少数标点和符号字节上有所不同。
常见问题
- 是什么导致了 mojibake?
- mojibake 发生在以一种字符编码保存的文本被以另一种编码读取时。经典情形是 UTF-8 字节被按 Windows-1252 或 Latin-1 解码,于是像重音、弯引号和表情符号这样的多字节字符分裂成了几个错误的单字节字形。
- 为什么 Café 会显示为 Café?
- 在 UTF-8 中,é 是两个字节 (0xC3 0xA9)。当这些字节被按 Windows-1252 读取时,0xC3 变成 Ã,0xA9 变成 ©,于是「Café」就变成了「Café」。修复器会将这些字符映射回字节,并按 UTF-8 解码,从而恢复出 é。
- 为什么撇号会变成 ’?
- 弯撇号(’,U+2019)是三个 UTF-8 字节。被按 Windows-1252 解码后它们变成 â、€ 和 ™,这就是为什么「don't」会显示为「don’t」。把这三个字符重新按 UTF-8 解码,就能重建出原始的 ’。
- Windows-1252 修复和 Latin-1 修复有什么区别?
- Windows-1252 和 Latin-1(ISO-8859-1)几乎完全相同,但在 0x80–0x9F 范围内有所不同,那里 Windows-1252 容纳了弯引号、破折号和欧元符号。请先试 Windows-1252 修复;如果某个标点或符号字符仍然错误,再切换到 Latin-1。
- mojibake 总能被修复吗?
- 常常可以,但并非总是如此。如果在你复制文本之前,原始字节就已被一个通用的占位符(即 � 替换字符)替换,那么信息就已丢失,任何修复器都无法恢复。只有在乱码但可逆的字节仍然完好时,修复才有效。
- 我粘贴的文本会被上传到任何地方吗?
- 不会。mojibake 修复完全在你的浏览器中运行,因此你粘贴的文本在你的设备上本地处理,不会发送到服务器。
相关工具
全部 ArrayKit 工具