您的位置 首页 java

「软帝学院」java字符编码小知识,你漏了吗?

字符编码

我们知道计算机底层数据存储的都是二进制数据,而我们生活中的各种各样的数据,如何才能和计算机中存储的二进制数据对应起来呢?这时老美他们就把每一个字符和一个整数对应起来,就形成了一张编码表,老美他们的编码表就是ASCII表。其中就是各种英文字符对应的 编码

编码表:其实就是生活中字符和计算机 二进制 的对应关系表。

1、ascii: 一个字节中的7位就可以表示。对应的字节都是正数。0-xxxxxxx

2、iso-8859-1:拉丁码表 latin,用了一个字节用的8位。1-xxxxxxx 负数。

3、GB2312:简体中文码表。包含6000-7000中文和符号。用两个字节表示。两个字节第一个字节是负数,第二个字节可能是正数

  • GBK :目前最常用的中文码表,2万的中文和符号。用两个字节表示,其中的一部分文字,第一个字节开头是1,第二字节开头是0
  • GB18030:最新的中文码表,目前还没有正式使用。

4、 unicode :国际标准码表:无论是什么文字,都用两个字节存储。

  • Java中的 char 类型用的就是这个码表。char c = ‘a’;占两个字节。
  • Java中的 字符串 是按照系统默认码表来解析的。简体中文版 字符串默认的码表是GBK。

5、 UTF-8 :基于unicode,一个字节就可以存储数据,不要用两个字节存储,而且这个码表更加的标准化,在每一个字节头加入了编码信息(后期到 api 中查找)。

能识别中文的码表:GBK、UTF-8;正因为识别中文码表不唯一,涉及到了 编码解码 问题。对于我们开发而言;常见的编码 GBK UTF-8 ISO-8859-1

文字—>(数字) :编码。 “abc”.get byte s() byte[]

(数字)—>文字 : 解码。 byte[] b={97,98,99} ;new String(b)

(更多相关java知识干货,关注 “软帝在线” 公号获取相关福利)

文章来源:智云一二三科技

文章标题:「软帝学院」java字符编码小知识,你漏了吗?

文章地址:https://www.zhihuclub.com/188086.shtml

关于作者: 智云科技

热门文章

网站地图