Agent Skills
返回列表
文本编码检测器

文本编码检测器

开发编程 更新于 2026.08.30

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_15292d5a/yjkj-cn-text-encoding-detector。

技能介绍

要解决什么问题

在 Linux 服务器、旧项目归档或跨团队交接里,.txt、.csv、日志片段经常没有可靠的编码元数据。用默认 UTF-8 打开 GBK/GB2312 文件会出现乱码;反过来用错误解码器批量转换会把内容写坏。动手前需要先知道「这份文件实际是什么字节序列对应的字符集」。

技能如何工作

本技能面向文本文件的字符编码识别,实现为纯 Python,不依赖第三方库。核心能力包括:

  • 识别常见中文相关编码:UTF-8(含/不含 BOM)、GBK、GB2312
  • 识别 UTF-16 LE/BE、Latin-1 / ISO-8859-1
  • 检测 BOM(Byte Order Mark) 并在结果中体现
  • 输出时一并报告文件大小与判定编码

检测策略有明确顺序:优先尝试 UTF-8,再尝试 GBK;若均无法合理解码,则返回 UNKNOWN,避免在不确定时强行指定编码。

典型用法场景:修复乱码源文件、批量转码前的摸底、流水线处理前的编码校验。

适用边界与注意点

  • 结果是启发式检测,不是文件系统或邮件头里声明的「官方编码」;对混合编码、损坏字节或极短样本,可能得到 UNKNOWN 或误判。
  • 仅覆盖 SKILL 中列出的编码族;未列出的本地码页需另寻方案。
  • 检测成功不等于转码安全:转码前仍建议抽样人工确认,尤其是含罕见汉字或二进制混入的文本。

使用场景

  • 从客户或旧系统拿到的 CSV/日志在编辑器里乱码,需要先确认是 GBK 还是 UTF-8 再选解码方式打开
  • 批量用 iconv 或脚本转码前,要对目录里每份 `.txt` 跑一遍编码探测,避免误转破坏内容
  • 数据入库或 ETL 读取本地文本前,校验文件是否为 UTF-8(含 BOM 情况),不符合则先分支处理
  • Windows 导出的 GB2312/GBK 文档要在 Linux 服务上解析,处理前先拿到编码标签与文件大小便于记录

适合人员

  • 维护含 Windows 遗留导出文件的 ETL,需要在转 UTF-8 入库前逐文件确认编码的数据工程师
  • 负责旧版 GB2312 技术文档迁移,要先批量摸底编码再制定转码策略的本地化/文档工程师
  • 在服务器上排查用户上传的乱码附件或日志,需快速判断 BOM 与 GBK/UTF-8 的运维或后端开发
  • 写纯 Python 小工具处理文本、不能加第三方依赖、又要内置编码检测能力的脚本作者