乱码修复 在线检测文件编码并修复乱码工具
打开文件全是乱码?自动检测文本和文件的真实编码,支持GBK、UTF-8等常见编码,一键重新编码修复中文乱码,支持文件上传使用。
更新于 2026-08-26
相关工具
功能特性
- 打开或拖入任意文本文件(.txt、.csv、.json、.log、.xml),立即按置信度排名显示真实编码
- BOM 即时检测:UTF-8(EF BB BF)、UTF-16 LE(FF FE)、UTF-16 BE(FE FF)文件可确定识别
- UTF-8 严格验证:使用 fatal 模式解码器,非法字节序列直接判否,不做猜测
- GBK / GB18030 启发式评分:双字节合法率加汉字高频区统计,能识破伪装成 UTF-8 的中文文件
- 置信度候选列表:每个编码都带分数条,清楚看出 UTF-8、GBK、UTF-16 的对比依据
- 即时解码预览:最佳候选当场解码,转码前先确认文本是否正确
- 一键转码为 UTF-8:保存修正后的副本,保留原文件名与扩展名
- 一键复制解码文本到剪贴板,方便立即复用
- 粘贴文本乱码检测:识别经典锟斤拷、é 式与 测试 式乱码,并指出是哪一步误读造成的
- 诚实的边界说明:粘贴文本已丢失原始字节时明确告知,只有真实文件才能修复
- 针对中文常见痛点设计:记事本 ANSI(GBK)文件、Windows 导出的 CSV、误判的下载文件
使用方法
- 1把文件拖到虚线区域,或点击区域浏览选择。检测自动运行,文件模式没有 Detect 按钮。
- 2查看候选列表:排在首位的是最佳判断,每个编码都显示置信度条与百分比。
- 3检查解码预览,显示正常的中文或英文即说明所选编码正确。
- 4点击「转为 UTF-8 并保存」得到修正后的副本,文件名保持不变。
- 5修复经典记事本问题:存成 ANSI(中文即 GBK)的文件打开全是乱码。在此加载,选择 GBK,保存 UTF-8 版本即可。
- 6处理 Windows 导出的 CSV:Excel 打开正常、其他工具全是乱码,文件几乎都是 GBK,转码一次所有工具都能读。
- 7不确定下载的文件到底是什么编码?跑一次检测,分数会显示字节实际匹配哪些编码。
- 8切到文本标签页,粘贴乱码片段即可得知是哪一步误读(GBK 被当 UTF-8、UTF-8 被当 Latin-1、UTF-8 被当 GBK)。
- 9记住诚实原则:粘贴的乱码文本已丢失字节,文本模式只做诊断,文件模式才能真正修复。
- 10编辑器允许时保留 UTF-16 的 BOM,以后检测将即时且无歧义。
常见问题
为什么我的中文会显示成乱码?
乱码源于写入与读取使用了不同编码。典型情况:按 GBK 保存的文件(中文 Windows/记事本默认的「ANSI」)被当作 UTF-8 打开,或 UTF-8 文件被当作 GBK 打开。字符看起来是随机符号,但字节完好无损,所以真实文件通常可以修复。
为什么粘贴的乱码文本修不了?
因为粘贴给我们的是字符而不是字节。字节一旦被错误编码解码,原始字节值就丢失了,同一段乱码字符可能对应多种字节序列,无法反向映射。文本模式能告诉你哪里出了问题,但只有文件模式(读取原始字节)才能真正修复。
GBK 和 UTF-8 是怎么区分的?
UTF-8 采用严格验证:任何非法字节序列直接判否。GBK 使用 0x81-0xFE 加 0x40-0xFE 的双字节组合,检测器会统计多少字节构成合法 GBK 字节对、多少落在常用汉字区(0xB0-0xF7)。中文 GBK 文件通常不是合法 UTF-8,这是最强的判据。
工具支持哪些编码?
检测覆盖 UTF-8(带或不带 BOM)、UTF-16 LE/BE、GBK/GB18030 与 Windows-1252。转码使用浏览器 TextDecoder 支持的编码标签,以上全部在内。其他遗留编码(Big5、Shift_JIS 等)不在检测范围。
检测结果一定对吗?
对没有 BOM 的文件,任何检测器都无法做到 100%。极短文件与纯 ASCII 文件几乎不含编码信息,置信度会偏低。较长的中文内容信号很强,带 BOM 的文件则能确定识别。因此每个结果都显示置信度分数而非单一结论。
BOM 是什么?
字节顺序标记是文件开头的几个字节,用于声明编码:EF BB BF 是 UTF-8,FF FE 是 UTF-16 LE,FE FF 是 UTF-16 BE。带 BOM 的文件可被即时、无歧义地识别。编辑器询问时,带 BOM 保存通常是更稳妥的选择。
「锟斤拷」是什么?
它是中文最著名的乱码。GBK 字节被当作 UTF-8 解码时,每个坏掉的字节对都会变成 U+FFFD(�);这段文本若再以 GBK 保存并读取,U+FFFD 就变成了锟斤拷。看到它意味着字节经历了两次错误转换:信息已经损坏,无法完全恢复。
能批量转码多个文件吗?
不能:本工具一次处理一个文件。批量转换时,可在确认源编码后(参考 GBK 与 UTF-8 区分的那条 FAQ)用 iconv 或 Python 写个小脚本处理。
转码后的文件会丢失内容吗?
检测正确时,GBK → UTF-8 是无损的:每个中文字符恰好映射一次。例外是已损坏的内容(如锟斤拷),损坏发生在更早的环节,任何工具都无法凭空补回缺失的信息。罕见的 GB18030 扩展字符也能干净地转成 UTF-8。
能修复 Excel 导出的 CSV 中文乱码吗?
大多数情况可以。中文 Windows 的 Excel 导出的 CSV 通常为 GBK 编码,其他程序打开就会显示乱码。把 .csv 文件拖进工具,确认 GBK 候选后点击「转码为 UTF-8 并保存」,再打开保存的副本,Excel、Numbers 和各类编辑器都能正确显示。工具不会改动原文件。
置信度低或预览看起来不对怎么办?
试试候选列表里的下一个编码,例如短中文文件的 GBK 分数略低于 UTF-8 时,先看 GBK 下的解码预览再决定转码。短文件、纯 ASCII 文件和已损坏的文件几乎不含编码信息,任何检测器都无法确定;预览就是你的验证步骤,确认无误后再保存。
转成 UTF-8 后还是乱码,怎么办?
通常是因为源编码选错了:文件被错误的字符集解码,转码后的副本保留了同样的误读字节。重新加载原文件,尝试候选列表中排名靠后的编码,确认解码预览显示正常文本后再保存。如果所有候选都不对,说明字节在转换前就已损坏,通过粘贴而不是打开文件拿到的文本已丢失原始字节,任何工具都无法完全恢复。
能处理 UTF-16 文件吗?
能。带 UTF-16 BOM 的文件(记事本保存的即是)可确定识别。无 BOM 的 UTF-16 依靠零字节位置启发式,对以 ASCII 为主的文本可靠,但纯中文且无 BOM 的 UTF-16 确实存在歧义,分数会偏低。
这个工具会损坏我的原文件吗?
不会。文件只读打开、绝不被修改,工具只会生成新的文件供你保存。请保留原文件,直到确认转码副本无误。
为什么我的检测结果和 Mozilla 的通用编码检测器不一样?
两者方法不同。Mozilla 的通用检测器(Firefox 和许多库在用)基于在大型语料上训练的统计 n-gram 模型;本工具使用严格的 UTF-8 验证、GBK/GB18030 双字节评分、BOM 检测和 Windows-1252 启发式。带 BOM 的文件两者都能确定一致;短文件、纯 ASCII 文件或真正有歧义的文件,两者可能结论不同:这类情况下没有任何启发式方法能证明自己正确。请以置信度条和解码预览为准,不要只信单一结论。