乱码修复工具 — 在线还原编码错误的乱码文字
逆向尝试各种可能的编码组合来修复乱码
在浏览器中处理 · 不上传任何内容
示例是被按 Windows-1252 读取的 UTF-8 文本。请换成你自己的乱码文本。
1 个候选结果。最可能:按 UTF-8 保存,按 Windows-1252 (Latin-1) 读取
最可能
你好,世界!这是一段中文测试文本。
按 UTF-8 保存,按 Windows-1252 (Latin-1) 读取
对 UTF-8、CP949(EUC-KR)、Shift_JIS 和 Windows-1252 的每种组合(共 12 种)进行逆向还原,被弄乱两次的文本会再还原一次。常见字符(拉丁字母、假名、KS X 1001 的 2,350 个常用韩文音节)越多、�、控制字符和零散 Latin-1 符号越少,排名越靠前。编码表遵循 WHATWG Encoding Standard;你的文本只留在浏览器中。
功能简介
乱码修复工具能把乱掉的文字还原成本来的样子。邮件标题里本该是“é”却显示成“é”,数据库导出的内容里撇号全变成了“’”,或者中文、韩文、日文变成了一串奇怪的符号,都可以试试。你不需要知道是哪两种编码搞混了:工具会尝试所有可能的组合,把最自然的结果排在前面。
使用方法
- 粘贴乱码文本。一开始会填入一个示例。
- 先看“最可能”的候选结果。
- 每个候选结果都会说明文本是怎样变成乱码的,例如“按 UTF-8 保存,按 Windows-1252 读取”。如果问题反复出现,请在误读文本的程序里修改这项设置。
- 复制你需要的候选结果。
- 如果找不到更好的结果,或者文本里满是 �,请用编码转换工具打开原始文件。
工作原理
- 尝试的编码:UTF-8、CP949(EUC-KR)、Shift_JIS 和 Windows-1252(Latin-1),共 12 种组合。每次还原时,先用被误读时的编码把乱码文本编码回字节,再用字节真正的编码解码。
- 第一步没有丢失任何内容的候选结果,会再还原一次,以捕获被弄乱两次的情况。
- 排序时优先考虑拉丁字母和数字、日文假名以及 2,350 个常用韩文音节,对 �、控制字符、零散的 Latin-1 符号以及紧贴在拉丁字母前面的韩文扣分。产生新的 � 空缺的候选结果会被大幅降低排名。
- 输入中 � 占 20% 或以上时,会先显示“无法从文本中恢复”的说明和编码转换工具的链接,并且只保留剩余文字清晰可读(常用韩文或假名)的候选结果,绝不会把看起来随机的杂乱字符当作修复结果。
- 不处理 GBK、GB2312、Big5 等中文编码造成的乱码。
- 编码表遵循 WHATWG Encoding Standard。
示例
| 乱码 | 原因 | 修复结果 |
|---|---|---|
| Café crème | UTF-8 按 Windows-1252 读取 | Café crème |
| it’s | UTF-8 按 Windows-1252 读取 | it’s |
| 䏿–‡ | UTF-8 按 Windows-1252 读取 | 中文 |
| 한글 | UTF-8 按 Windows-1252 读取 | 한글 |
| À̸§ | CP949 按 Windows-1252 读取 | 이름 |
| 譌・譛ャ隱槭� | UTF-8 日文按 Shift_JIS 读取 | 日本語…(部分) |
| �ȳ��ϼ��� | CP949 按 UTF-8 读取 | 无法恢复(显示说明和编码转换工具链接) |
常见问题
乱码是怎么产生的?
文字是以字节保存的。用一种编码保存、却用另一种编码读取时,同样的字节就会显示成错误的字符。UTF-8 的“café”按 Windows-1252 读取会变成“café”,“中文”会变成“䏿–‡”。
什么情况下无法修复?
如果文本里满是 �(替换字符),说明原始字节在误读时就已经丢失,无法从文本中重建。典型例子是把韩文 EUC-KR 文件当作 UTF-8 打开。这种情况请用编码转换工具打开原始文件。
能修复“锟斤拷”“烫烫烫”这类乱码吗?
不能。这个工具只尝试 UTF-8、CP949(EUC-KR)、Shift_JIS 和 Windows-1252 之间的组合,不处理 GBK、GB2312、Big5 等中文编码。“锟斤拷”来自 GBK 与替换字符之间的转换,“烫烫烫”是未初始化内存的显示结果,都不在支持范围内。
应该相信哪个候选结果?
排在最前面的是读起来最自然的结果,但很短的文本可能有歧义。选读起来是正常句子的那个,并看看它是怎样变成乱码的说明。
能处理被弄乱两次的文本吗?
能。被误读、保存后又被误读一次的文本(é 变成 Â…),会分两步还原。超过 5,000 个字符的文本为了保证速度只还原一步。
为什么很短的日文有时修不好?
候选结果按自然程度排序,而很短的乱码本身混有汉字和假名,可能看起来也像正常文字。经 Shift_JIS 弄乱的“ありがとう”(“縺ゅj縺後→縺�”)可能没有候选结果,或排序不同。较长的文本排序可靠得多,所以请把前后的句子一起粘贴进来。
我的文本会被保存吗?
不会。所有处理都在你的浏览器中完成。