文件编码检测
拖入文本或文件本地探测编码:识别 UTF-8 / UTF-16 / GBK 与 BOM,并用判定编码实时预览内容;乱码排查不再靠反复试。
>_ 使用指南 · GUIDE
拖入文本或文件,本地探测其编码(UTF-8 / UTF-16 / GBK)与 BOM 状态,并按判定出的编码实时预览内容。遇到打开是乱码的文本时,用它判断「这是什么编码」,往往比反复试编码更省事。
理解几个概念有助于判读:BOM(字节顺序标记)是文件开头用于声明编码的若干字节,有 BOM 时判定最可靠;没有 BOM 时,主要靠字节模式推断。需要留意的是,UTF-8 与 GBK 在字节层面存在重叠,短文本或纯 ASCII 内容可能两者都「说得通」,因此工具给出的是「判定 + 置信度」而非绝对结论。判定顺序大致是:BOM → UTF-8 严格校验 → UTF-16 零字节启发 → GBK 试探 → Latin-1 兜底。
典型步骤:
- 拖入文件或粘贴文本:放入待检测的内容
- 读取判定编码与 BOM 状态:看识别结果与置信度
- 查看按该编码的预览:用实时预览人工确认
- 确认无误后复制文本:取走正确解码的文本
>_ 常见问题 · FAQ
Q1 · 为什么编码有时会判断错?
因为没有 BOM 时,编码只能靠字节模式推断,而 UTF-8 与 GBK 的字节范围存在重叠,短文本或几乎全是 ASCII 的内容可能同时符合多种编码。因此结果是「判定 + 置信度」,置信度低时请结合实时预览人工确认,必要时手动切换编码再比对。
Q2 · BOM 是什么,要不要去掉?
BOM 是文件开头的一段特殊字节,用来声明编码(例如 UTF-8 的 BOM),有 BOM 时编码判定最可靠。是否去掉取决于用途:多数场景建议去掉,以免在某些解析器、脚本或拼接场景里产生多余字符;但若是需要显式声明编码的场合,保留反而有用。
Q3 · 支持检测哪些编码?
主要覆盖 UTF-8、UTF-16 与 GBK,并以 Latin-1 作为兜底。GBK 的判定为启发式(实验性),可能不够精确,可手动覆盖。若你的文本属于其他编码,建议先用外部工具转换成上述常见编码再检测。
Q4 · 文件会被上传吗?
不会。检测在浏览器本地完成,文件内容不离开你的设备、也不会被存储。大文件只采样读取头部用于预览,因此即便处理较大的文件也很快。关闭页面即无残留。
Q5 · 和「Unicode 转义」「文件信息读取」工具的分工是什么?
职责不同:Unicode 转义(unicode)处理 \uXXXX 这类转义与字符的互转;文件信息读取(filemeta)读取大小、类型等元信息;本工具专做字符集编码判定与按编码预览。要转义用前者,要看元信息用后者,要判编码用本工具。