为什么说utf-8是单字节编码,有些字符需要使用2字节或者3字节才能表示,对于多字节应该有字节顺序的问题,为什么utf-8不像utf-16那样有这个问题。
uft-8编码规则:
1字节 0000-007f 0xxxxxxx
2字节 0080-07ff 110xxxxx10xxxxxx
3字节 0800-FFFF 1110xxxx10xxxxxx10xxxxxx
是不是这样理解:每个字节都有特定的位,如1110,110,10,单字节编码也就是这个意思。通过这个可以区分字节顺序,比如3字节1110XXXXX肯定在最前面。
uft-8编码规则:
1字节 0000-007f 0xxxxxxx
2字节 0080-07ff 110xxxxx10xxxxxx
3字节 0800-FFFF 1110xxxx10xxxxxx10xxxxxx
是不是这样理解:每个字节都有特定的位,如1110,110,10,单字节编码也就是这个意思。通过这个可以区分字节顺序,比如3字节1110XXXXX肯定在最前面。
解决方案 »
- 最近看到很多人提正则表达式的问题,整理点学习资料
- c# 反射 GetMethod为什么不能获取父类的静态方法和私有方法?
- VS2005 发布程序问题错误 程序可以运行发布成功但是无法运行
- 请教:如何在窗口中添加图形对象,有点象ppt的方式
- asp.net里关于引用嵌入资源的问题
- 用一个按钮改变一个GridView中的多个记录的值。。。
- 求高人解释-关于软件的打包
- CODEPROJECT上有一问题不明白
- 求助给分!!!!!!!!!字段和属性有什么区别?
- 在我的WinForm程序中,怎样用代码将DataSet的某一字段绑定到一个TextBox?
- C#控件的句柄传到C++的DLL中的问题
- 跪求时间转换格式
以0开始就是单字节
以110开始就是双字节
以1110开始就是三字节
以10开始就是双字节或者三字节后面的字节。
(绝大部分UTF-16字符为两个字节,但不排除有些UTF-16字符会有两个单元,即4个字节)