Unicode 和 UTF-8

Unicode是字符集,每一个字符都对应一个2/16进制的唯一编码,Unicode长度为2-4字节;

UTF-8是编码,根据Unicode重新编码一次,节省存储空间(英文1字节,中文3字节,最长6字节);

UTF-8mb4(UTF-8 more bytes 4)MySQL只支持3字节的UTF-8,UTF-8mb4就是支持4字节的UTF-8,如emoji表情就需要4字节的UTF-8;

Unicode转UTF-8规则(图片来自维基百科):

图片来自维基百科

通俗一点:

  • 所有的英文字母还是保留ASCII的编码规则(1字节),即英文编码还是0-127,兼容ASCII
  • 如果字符大于2字节,则第一字节的前n位置为1,第n+1位置为0,余下所有字节高位都填充10,然后依次将Unicode的二进制数填充即转成UTF-8

如:

这里写图片描述

CSDN的MD竟然不支持表格…

维基百科:https://zh.wikipedia.org/wiki/UTF-8

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值