Skip to main content
UFOZoo

乱码修复 在线检测文件编码并修复乱码工具

打开文件全是乱码?自动检测文本和文件的真实编码,支持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. 1把文件拖到虚线区域,或点击区域浏览选择。检测自动运行,文件模式没有 Detect 按钮。
  2. 2查看候选列表:排在首位的是最佳判断,每个编码都显示置信度条与百分比。
  3. 3检查解码预览,显示正常的中文或英文即说明所选编码正确。
  4. 4点击「转为 UTF-8 并保存」得到修正后的副本,文件名保持不变。
  5. 5修复经典记事本问题:存成 ANSI(中文即 GBK)的文件打开全是乱码。在此加载,选择 GBK,保存 UTF-8 版本即可。
  6. 6处理 Windows 导出的 CSV:Excel 打开正常、其他工具全是乱码,文件几乎都是 GBK,转码一次所有工具都能读。
  7. 7不确定下载的文件到底是什么编码?跑一次检测,分数会显示字节实际匹配哪些编码。
  8. 8切到文本标签页,粘贴乱码片段即可得知是哪一步误读(GBK 被当 UTF-8、UTF-8 被当 Latin-1、UTF-8 被当 GBK)。
  9. 9记住诚实原则:粘贴的乱码文本已丢失字节,文本模式只做诊断,文件模式才能真正修复。
  10. 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 文件或真正有歧义的文件,两者可能结论不同:这类情况下没有任何启发式方法能证明自己正确。请以置信度条和解码预览为准,不要只信单一结论。