编码格式
来源:互联网 发布:电竞椅 知乎 编辑:程序博客网 时间:2024/05/20 09:25
编码
获得编码下的byte值
String str4 = "中"; System.out.println(Arrays.toString(str4.getBytes("编码格式")));
1. GBK
● 包含了基本上所有的中国字,前127位是ASCII编码,再127是 西欧字符,然后是中国字、
● 汉字是由大于128两个字节组成的,如“中”字,从-128到127可以看成一个循环,128相当于-128,214就是-42,208就是-28.
● 测试编码
byte[] bs = {(byte)214,(byte)208}; String str = new String(bs); System.out.println(str); byte[] bs3 = {-42,-48}; String str3 = new String(bs3); System.out.println(str3);
2.GBK2312
● 等中国人们得到计算机时,已经没有可以利用的字节状态来表示汉字,况且有6000多个常用汉字需要保存呢。于是国人就自主研发,把那些127号之后的奇异符号们直接取消掉。规定:一个小于127的字符的意义与原来相同,但两个大于127的字符连在一起时,就表示一个汉字,前面的一个字节(他称之为高字节)从0xA1用到 0xF7,后面一个字节(低字节)从0xA1到0xFE,这样我们就可以组合出大约7000多个简体汉字了。在这些编码里,我们还把数学符号、罗马希腊的字母、日文的假名们都编进去了,连在 ASCII 里本来就有的数字、标点、字母都统统重新编了两个字节长的编码,这就是常说的”全角”字符,而原来在127号以下的那些就叫”半角”字符了。
3.UNICODE
● 因为当时各个国家都像中国这样搞出一套自己的编码标准,结果互相之间谁也不懂谁的编码,谁也不支持别人的编码。当时的中国人想让电脑显示汉字,就必须装上一个”汉字系统”,专门用来处理汉字的显示、输入的问题,装错了字符系统,显示就会乱了套。这怎么办?就在这时,一个叫 ISO (国际标谁化组织)的国际组织决定着手解决这个问题。他们采用的方法很简单:废了所有的地区性编码方案,重新搞一个包括了地球上所有文化、所有字母和符号的编码!他们打算叫它”Universal Multiple-Octet Coded Character Set”,简称 UCS, 俗称 “UNICODE”。
4.UTF-8
● UNICODE 在网络传输中,出现了两个标准 UTF-8 和 UTF-16,分别每次传输 8个位和 16个位。
● 于是就会有人产生疑问,UTF-8 既然能保存那么多文字、符号,为什么国内还有这么多使用 GBK 等编码的人?因为 UTF-8 等编码体积比 较大,占电脑空间比较多,如果面向的使用人群绝大部分都是中国人,用 GBK 等编码也可以。但是目前的电脑来看,硬盘都是白菜价,电脑性能 也已经足够无视这点性能的消耗了。所以推荐所有的网页使用统一编码:UTF-8。
● 测试编码
byte[] bs2 = {(byte)228,(byte)184,(byte)173}; String str2 = new String(bs2,"utf-8"); System.out.println(str2);
5.UTF-16
● 测试编码
int a = 0x4E; int b = 0x2D; byte[] bs1 = {(byte)a,(byte)b}; String str1 = new String(bs1,"utf-16"); System.out.println(str1);
6.UTF-16转换成UTF-8规则
如:汉字“中”
UTF-16二进制编码为:
11111110 11111111 01001110 00101101
UTF-8二进制编码为:
11100100 10111000 10101101
转换如下图:
- 编码格式
- 编码格式
- 编码格式
- 编码格式
- 编码格式
- 编码格式
- 编码格式
- 编码格式
- 编码格式
- 编码格式
- 编码格式
- 编码格式
- 编码格式
- 编码格式
- 编码格式
- 编码与编码格式?
- 容器格式和编码格式
- VBScript编码规范格式
- Canny边缘检测算法原理及其VC实现详解(一)
- 管理 Java 类路径 (Windows)
- CodeIgniter如何去掉Index.php-apache服务器
- 前端ie不兼容现在的主流js写法问题
- Java垃圾收集学习笔记
- 编码格式
- Struts2属性驱动与模型驱动
- MySQL Daemon failed to start. 无法启动
- 浅谈EABI和OABI
- 深度学习 激活函数
- HDU
- [HNOI2008]水平可见直线
- UVa11542
- KMP算法