GBK解码方法:还原步骤与常见错误

69 0

GBK 是中文 Windows 长期使用的汉字编码,全称《汉字内码扩展规范》,1995 年发布。下面重点说明还原步骤与常见错误。

GBK解码方法

解码方向:读到大于 0x80 的字节,就与下一字节组合查表得到汉字。

  • Python、Java 在中文 Windows 上默认编码可能是 GBK,读 UTF-8 文件要显式指定编码
  • GBK 的尾字节可能是 0x5C(反斜杠),老程序处理“\”时可能截断汉字

示例

输入:2026-11-11

编码结果:32 30 32 36 2D 31 31 2D 31 31

说明:按 GBK 共 10 字节。

与相关技术的区别

GBK 与 GB2312:GB2312 只有 6,763 个简体汉字,GBK 扩展到 2 万多个,包括繁体字。GBK 与 GB18030:GB18030 兼容 GBK 并用 4 字节编码覆盖全部 Unicode。GBK 与 UTF-8:UTF-8 是国际通用编码,GBK 只适合中文环境。

Java 示例

下面是 Java 中处理GBK的常用写法:

byte[] b = "中".getBytes("GBK");          // [-42, -48]
String s = new String(b, "GBK");
new InputStreamReader(new FileInputStream(f), "GBK");

运行前确认输入的字符集(推荐 UTF-8),结果可以用本站工具交叉核对。

本站的字符编码检测工具可以直接处理,计算在浏览器本地完成,适合快速核对结果。

常见问题

【GBK 文件怎么转 UTF-8?】用 iconv -f GBK -t UTF-8,或在编辑器中以 GBK 打开后另存为 UTF-8。

【GBK 和 GB2312 有什么区别?】GBK 是 GB2312 的扩展,收字更多,包含繁体字;GB2312 编码的文本可以直接按 GBK 读取。

【一个汉字在 GBK 中占几个字节?】2 个字节。

文中示例可以在本站对应工具中验证;处理密码、证件号等敏感数据时,请注意保护隐私。

署名:123问编辑部 · 最近修订:2026-11-11 · 已按编辑与审核说明检查;内容仅供参考,不构成医疗、法律或投资建议。发现错误可查看纠错方式。

标签: 解码 文本处理

抱歉,评论功能暂时关闭!