← 返回工具箱
🔐 编码加密解密

📖 字符编码标准概览

字符编码是将字符转换为计算机可处理的数字的规则。了解不同编码标准的区别和特点,有助于正确处理多语言文本和避免乱码问题。

主要编码标准

编码发布年份字符集大小特点
ASCII1963年128个字符仅支持英文字母、数字和基本符号,每个字符占1字节
GB23121980年6,763个汉字中国大陆简体中文标准,兼容ASCII
GBK1995年21,886个汉字GB2312的扩展,包含繁体字和更多汉字
UTF-81993年覆盖全部Unicode变长编码(1-4字节),向后兼容ASCII,互联网最常用编码
UTF-161996年覆盖全部Unicode变长编码(2或4字节),Java和Windows内部使用
UTF-32覆盖全部Unicode固定4字节编码,空间浪费大,很少使用

Base64编码算法

Base64是一种将二进制数据编码为可打印ASCII字符的方法。它将每3个字节(24位)转换为4个Base64字符(每个字符代表6位)。

Base64字符表:A-Z (0-25), a-z (26-51), 0-9 (52-61), + (62), / (63)

编码过程:
1. 将原始数据按每3字节分组
2. 将24位拆分为4组,每组6位
3. 每组6位对应Base64字符表中的一个字符
4. 如果最后不足3字节,用 = 号填充

示例:Man → TWFu
M(77) a(97) n(110) → 01001101 01100001 01101110
→ 010011 010110 000101 101110 → T W F u

URL编码规则

URL编码(百分号编码)将非ASCII字符和特殊字符转换为 %XX 格式:

字符编码字符编码
空格%20&%26
=%3D?%3F
#%23+%2B
/%2F%%25

HTML实体引用

字符实体名称实体编号说明
&&&和号,HTML中必须转义
<&lt;&#60;小于号,避免与标签冲突
>&gt;&#62;大于号,避免与标签冲突
"&quot;&#34;双引号,属性值中使用
'&apos;&#39;单引号(HTML5支持)
(空格)&nbsp;&#160;不换行空格
©&copy;&#169;版权符号
®&reg;&#174;注册商标
💡 小贴士:在Web开发中,推荐统一使用UTF-8编码。确保HTML文件头部声明 <meta charset="utf-8">,数据库使用utf8mb4字符集(以支持emoji等4字节字符),HTTP响应头设置 Content-Type: text/html; charset=utf-8。这样可以有效避免中文乱码问题。