Java编码

作者: _Away_y | 来源:发表于2016-12-09 09:36 被阅读9次

    我们为什么要编码?

    因为人类的语言太多,而计算机的存储单元——字节完全不能满足(1个字节是8个bit,所能表示的字符范围是0~255),所以一个字节不可能表述清楚所有的语言,就拿汉语举例,你会255个汉字算个什么。。。
    那这样一个字节不行我们就用两个,两个不行我们还可以再加,那么表述语言的最小单位已经就已经不是字节了,而是一种新的数据结构char,而char与byte的转化必须编码(用规则去转义)。

    怎么编码(如何“翻译”)

    不同的规范有不同的规则。像ASCII、ISO-8859-1、GB2312、GBK、UTF-8、UTF-16等,它们都可以看做是字典,它们规定了转化的规则,按照这个规则就可以让计算机正确的表示我们的字符。
    这里只提一嘴UTF-8和UTF-16,其他感兴趣的编码可以百度一下。
    说到UTF必须提到Unicode(Universal Code统一码),ISO试图创建一个全新的超语言字典,世界上所有的语言都可以通过这个字典来互相翻译。可想而知这个字典多么复杂。

    UTF-16

    具体定义了Unicode字符在计算机中的存取方式。UTF-16用两个字节来标识Unicode的转化格式,它采用定长的标识方法,即不论什么字符都可以用两个字节表示。两个字节是16个bit,所以叫UTF-16。

    未完待续~

    相关文章

      网友评论

        本文标题:Java编码

        本文链接:https://www.haomeiwen.com/subject/jcdemttx.html