UTF-8 GBK
来源:互联网 发布:软件销售ppt 编辑:程序博客网 时间:2024/05/22 08:16
UTF-8(8-bit Unicode Transformation Format)是一种针对Unicode的可变长度字符编码,又称万国码。UTF-8用1到6个字节编码UNICODE字符。
ASCII的7位字符集,它是美国标准信息交换代码(American Standard Code for Information Interchange)的缩写, 为美国英语通信所设计。它由128个字符组成,包括大小写字母、数字0-9、标点符号、非打印字符(换行符、制表符等4个)以及控制字符(退格、响铃等)组成。
UNICODE字符集。它通过增加一个高字节(共两个字节)对ASCII字符集进行扩展,当高字节位为0时,低字节就是ASCII字符。Unicode只是一个符号集,它只规定了符号的二进制代码,却没有规定这个二进制代码应该如何存储。
UTF(Universal Transformation Format)通用转换格式。常见的UTF格式有:UTF-7, UTF-7.5, UTF-8,UTF-16, 以及UTF-32。
UTF-8是Unicode的实现方式(编码方式)之一。
UTF-8是一种变长字节编码方式。UTF-8最多可用到6个字节。
如表:
1字节 0xxxxxxx
2字节 110xxxxx 10xxxxxx
3字节 1110xxxx 10xxxxxx 10xxxxxx
4字节 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx
5字节 111110xx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx
6字节 1111110x 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx
UTF-8的编码规则很简单,只有二条:
1)对于单字节的符号,字节的第一位设为0,后面7位为这个符号的unicode码。因此对于英语字母,UTF-8编码和ASCII码是相同的。
2)对于n字节的符号(n>1),第一个字节的前n位都设为1,第n+1位设为0,后面字节的前两位一律设为10。剩下的没有提及的二进制位,全部为这个符号的unicode码。
UTF8可以容纳31位二进制数字。Unicode的最大码位0x7FFFFFFF也只有31位。
- GB2312简体中文的编码格式, 只支持6763个常用汉字;
- GBK是GB2312基础上扩容后兼容GB2312的标准,包含全部中文字符,支持简体中文及繁体中文;
- GBK通用性比UTF8差,不过UTF8占用的数据库比GBK大;
- GB2312、GBK都属于双字节字符集 ;
GBK、GB2312等与UTF8之间都必须通过Unicode编码才能相互转换 ,也即:
GBK、GB2312 ---> Unicode ---> UTF-8
UTF8 ---> Unicode ---> GBK、GB2312
汉字UNICODE编码表http://www.chi2ko.com/tool/CJK.htm
字符集(character set)和字符编码(character encoding)的混淆
GBK即汉字内码扩展规范,是「国家标准扩展」三个词的拼音缩写
由于GBK到Unicode的汉字没有直接的映射关系,传说GBK是按拼音排序,Unicode是按部首排序的。所以要转换之前必须得有个对照表。
GBK与UNICODE互转算法http://blog.csdn.net/tge7618291/article/details/7608510
- GBK和UTF-8
- GBK和UTF-8
- GBK 转 UTF-8
- UTF-8转GBK
- UTF-8-GB2312-GBK
- UTF-8 GBK GB2312
- gbk -> utf-8
- GBK与UTF-8
- GBK与UTF-8
- GBK转UTF-8
- GBK、GB2312、UTF-8
- UTF-8>GBK>GB2312
- GBK-UTF-8互转
- gbk转utf-8
- GBK & UTF-8
- unicode、GBK、UTF-8
- utf-8 gbk
- GBK 转UTF-8
- Android中Fragment学习笔记
- 解决“U盘插入Ubuntu后文件只读且无法删除”问题
- cocos2d-lua09apk打包发布&C++注册到Lua
- tomcat 默认网站和虚拟目录配置
- curl与php
- UTF-8 GBK
- 设计模式之策略
- myeclipse 安装svn的方法
- (水)POJ-3083 按规定方向遍历方法
- BZOJ2683 简单题 题解&代码
- tomcat启动报错:IOException while loading persisted sessions: java.io.EOFException java.io.EOFException
- Android .mk文件中需要注意的一些宏
- 把Android源码中的密码对转换为keystore的方法
- 归并排序