UTF-8 是 Unicode 最常用的存储编码,用 1–4 个字节表示一个字符:ASCII 字符 1 字节,拉丁字母扩展 2 字节,常用汉字 3 字节,emoji 等 4 字节。下面重点说明字符集与跨系统一致性。
UTF-8字符集问题
编码问题的关键是“写入和读取使用同一种字符集”:文件保存、数据库连接(SET NAMES utf8mb4)、HTTP 响应头、HTML meta 都要统一为 UTF-8。
示例
输入:你好,世界
编码结果:E4 BD A0 E5 A5 BD EF BC 8C E4 B8 96 E7 95 8C
说明:按 UTF-8 共 15 字节。
与相关技术的区别
UTF-8 与 GBK:UTF-8 覆盖全部 Unicode,汉字 3 字节;GBK 只覆盖简繁汉字和部分符号,汉字 2 字节,但不能表示 emoji 和多数外文。UTF-8 与 UTF-16:UTF-16 中 BMP 字符 2 字节,适合内存中处理(Java、JavaScript、Windows 内部),但不兼容 ASCII。
中文的处理
常用汉字在 UTF-8 中都是 3 字节,首字节在 E4–E9 之间:“中”E4 B8 AD,“文”E6 96 87,“问”E9 97 AE。中文标点(,。“”)也是 3 字节。
本站的字符编码检测工具可以直接处理,计算在浏览器本地完成,适合快速核对结果。
常见问题
【“䏿–‡”是什么乱码?】UTF-8 编码的“中文”被按 Latin-1/Windows-1252 解读的结果。
【UTF-8 能表示所有汉字吗?】能,包括所有 CJK 扩展区汉字。
【一个汉字在 UTF-8 中占几个字节?】常用汉字 3 个字节;扩展 B 区及以后的生僻字 4 个字节。
文中示例可以在本站对应工具中验证;处理密码、证件号等敏感数据时,请注意保护隐私。