GBK 是中文 Windows 长期使用的汉字编码,全称《汉字内码扩展规范》,1995 年发布。下面重点说明函数输出与类型。
GBK返回值说明
GBK 编码返回字节,汉字每个 2 字节;解码返回字符串,遇到非法字节按设定抛错或替换。
// 浏览器和 Node.js 18+ 支持 GBK 解码
new TextDecoder("gbk").decode(new Uint8Array([0xd6, 0xd0])); // "中"
// 编码为 GBK 需要 iconv-lite:iconv.encode("中", "gbk")
示例
输入:Hello
编码结果:48 65 6C 6C 6F
说明:按 GBK 共 5 字节。
命令行示例
# GBK → UTF-8
iconv -f GBK -t UTF-8 old.txt > new.txt
# 批量转换(需安装 enca 或 convmv 处理文件名)
for f in *.txt; do iconv -f GBK -t UTF-8 "$f" -o "u_$f"; done
# Windows 命令行切换到 UTF-8
chcp 65001
怎么选
新系统使用 UTF-8;必须对接中文 Windows 老软件、要求 GBK 的接口时才用 GBK;遇到 GBK 无法表示的字符(如“㐀”、emoji)时用 GB18030。
GBK 与 GB2312:GB2312 只有 6,763 个简体汉字,GBK 扩展到 2 万多个,包括繁体字。GBK 与 GB18030:GB18030 兼容 GBK 并用 4 字节编码覆盖全部 Unicode。GBK 与 UTF-8:UTF-8 是国际通用编码,GBK 只适合中文环境。
本站的字符编码检测工具可以直接处理,计算在浏览器本地完成,适合快速核对结果。
常见问题
【GBK 能存 emoji 吗?】不能,需要 UTF-8 或 GB18030。
【Excel 打开 UTF-8 的 CSV 乱码怎么办?】把 CSV 保存为带 BOM 的 UTF-8,或通过“数据 → 从文本”导入并选择 UTF-8。
【GBK 文件怎么转 UTF-8?】用 iconv -f GBK -t UTF-8,或在编辑器中以 GBK 打开后另存为 UTF-8。
文中示例可以在本站对应工具中验证;处理密码、证件号等敏感数据时,请注意保护隐私。