Java字符编码全解.pdf

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java字符编码全解

1. 概述 本文主要包括以下几个方面:编码基本知识,java,系统软件,url,工具软件等。 在下面的描述中,将以中文两个字为例,经查表可以知道其GB2312编码是d6d0 cec4,Unicode 编码为4e2d 6587,UTF编码就是e4b8ad e69687。注意,这两个字没有iso8859-1编码,但可 以用iso8859-1编码来表示。 2. 编码基本知识 最早的编码是iso8859-1,和ascii编码相似。但为了方便表示各种各样的语言,逐渐出现了很多标准编 码,重要的有如下几个。 2.1. iso8859-1 属于单字节编码,最多能表示的字符范围是0-255,应用于英文系列。比如,字母a的编码为0x61=97。 很明显,iso8859-1编码表示的字符范围很窄,无法表示中文字符。但是,由于是单字节编码,和计算机 最基础的表示单位一致,所以很多时候,仍旧使用iso8859-1编码来表示。而且在很多协议上,默认使用 该编码。比如,虽然中文两个字不存在iso8859-1编码,以gb2312编码为例,应该是d6d0 cec4 两个字符,使用iso8859-1编码的时候则将它拆开为4个字节来表示:d6d0cec4(事实上,在进行 存储的时候,也是以字节为单位处理的)。而如果是UTF编码,则是6个字节e4 b8 ad e6 96 87。 很明显,这种表示方法还需要以另一种编码为基础。 2.2. GB2312/GBK 这就是汉子的国标码,专门用来表示汉字,是双字节编码,而英文字母和iso8859-1一致(兼容iso8859-1 编码)。其中gbk编码能够用来同时表示繁体字和简体字,而gb2312只能表示简体字,gbk是兼容gb2312 编码的。 2.3. unicode 这是最统一的编码,可以用来表示所有语言的字符,而且是定长双字节(也有四字节的)编码,包括英文 字母在内。所以可以说它是不兼容iso8859-1编码的,也不兼容任何编码。不过,相对于iso8859-1编 码来说,uniocode编码只是在前面增加了一个0字节,比如字母a为00 61。 需要说明的是,定长编码便于计算机处理(注意GB2312/GBK不是定长编码(汉字双字节,英文单字节)), unicode unicode java unicode unicode java 而uunniiccooddee又可以用来表示所有字符,所以在很多软件内部是使用uunniiccooddee编码来处理的,比如jjaavvaa。 2.4. UTF unicode iso8859-1 unicode unicode iso8859-1 unicode 考虑到uunniiccooddee编码不兼容iisso-11编码,而且容易占用更多的空间:因为对于英文字母,uunniiccooddee 也需要两个字节来表示。所以unicode不便于传输和存储。因此而产生了utf编码,utf编码兼容iso8859-1 utf utf 编码,同时也可以用来表示所有语言的字符,不过,uuttff编码是不定长编码,每一个字符的长度从1-6个 字节不等。另外,utf编码自带简单的校验功能。一般来讲,英文字母都是用一个字节表示,而汉字使用三 个字节。 注意,虽然说utf是为了使用更少的空间而使用的,但那只是相对于unicode编码来说,如果已经知道是 汉字,则使用GB2312/GBK无疑是最节省的。不过另一方面,值得说明的是,虽然utf编码对汉字使用 3个字节,但即使对于汉字网页,utf编码也会比unicode编码节省,因为网页中包含了很多的英文字符。 3. java对字符的处理 在java应用软件中,会有多处涉及到字符集编码,有些地方需要进行正确的设置,有些地方需要进行一定 程度的处理。 3.1. getBytes(charset) 这是java字符串处理的一个标准函数,其作用是将字符串所表示的字符按照charset编码

文档评论(0)

cgtk187 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档