Unicode和UTF-8到底是啥?

Unicode给每个字符赋予了一个数值,包括中文字符、英文字符、日文字符等等。Unicode一般用\uxxxx表示,其中\u提示我们这是Unicode编码,xxxx是相应的Unicode数值。

对于“闷声发大财!”这几个字母,其Unicode表示是\u95f7\u58f0\u53d1\u5927\u8d22\uff01。对于“Hello Unicode!”这一串字符,其Unicode表示是\u0048\u0065\u006c\u006c\u006f\u0020\u0055\u006e\u0069\u0063\u006f\u0064\u0065\u0021。

聪明的你一定发现了,英文的Unicode表示前面两位基本是0,对于一篇英文文章,如果简单用两个字节来编码,那有一半的位置都是0,太浪费空间啦!为了避免空间的浪费,科学家开发出变长的UTF-8编码,有些字符用一个字节编码,其他的用多个字节表示。

总结下来,Unicode是给每个字符一个编号,而UTF-8是一种相对高效的变长编码方式。

【传送门】查看字符的Unicode

你可能感兴趣的:(Unicode和UTF-8到底是啥?)