Java编程技术中汉字问题的分析及解决 精品资料

Java编程技术中汉字问题的分析及解决 精品资料

ID:22684000

大小:67.12 KB

页数:61页

发布时间:2023-10-19 00:52:01

资源描述:

 字体编码学习-Java编程技术中汉字问题的分析及解决---JAVA汉字显示问题的解决方案分类: java相关2007-06-0702:31 1593人阅读 评论(0) 收藏 举报字体编码学习-关键字:USC,Unicode,utf-8,gb2312,字库什么是编码为了交流信息,所以对字符进行了统一的编码。UCS和ISO10646      ISO10646定义了通用字符集(UniversalCharacterSet,UCS).UCS是国际标准编码,包含了全球所有字符。UCS使用31bit进行编码。现在只分配了前65534个码位,这个16位的子|集称为基本多语言面(BMP)。什么Unicode   Unicode编码是UCS级别3的实现。Unicode编码全码为4个字节,所有字符都使用等的编码方式,现在只使用两个字节编码。兼容UCS定义的BMPGB2313与Unicode      GB2312是中国定制的国际准标编码,由两个字节组成,最高位为1表示汉字,最高为0表示是英文。      GB2312与区位码存在数值关系,区位码+20H=GB2312      GB2312与Unicode的转换不成数学关系,只能通过映射表来实现。

1      GB2312为80年定义的基本编码扩展编码|有      GBK      GB18030      GB13000与GBK不兼容,只是使用了相同的词汇.      最新为GB16500-95与unicode3.0兼容Unicode与UTF-8      Utf-8是为了兼容软件处理的编码,是unicode的另一种表示方式。使用变化的方式编码,第一字节表示字符的长度,后面的字符以10开头表示编码。0开头表示ascii编码。      例如:Unicode字符U+00A9=10101001(版权符号)在UTF-8里的编码为             1100001010101001=0xC2|0xA9字库与编码关系      字库是编码表字符显示的描述文件。字符编码是在字库中查询需要显示的字符的索引值。      不同的编码就应该有不同的字库,比如unicode编码就有unicode的字库。Gb2312编码就有gb2312的字库。字库格式      字库的格式主要有TrueType(ttf),PostScript(rip),OpenType等      TrueType是微软定义的字库格式,主要用于软件显示这种要求精度不高的环境,      PostScript是Adobe定义的字库格式,主要用于排版印刷等大字打印精度要求很高的环境|。      OpenType是TrueType与PostScript的综合格式,并且是使用了unicode的编码。 字体引擎      字体引擎用于读取字库,显示文字,文字转换等操作。现在免费的字体引擎有FreeType.参考文献   UTF-8andUnicodeFAQbyMarkusKuhn

2    http://leuksman.com/linux/TrueType-HOWTO.htmlhttp://www.5ivb.net/Info/55/Info16006/http://developer.apple.com/fonts/TTRe|fMan/index.html ////////////////////////////////////////////////////////////////////////////////////以前一直对utf、unicode、ascII还有GBK编码方式不太了解,只知道如果有中文的话一般用utf-8或GBK存储,今天正好又接触到了这个问题就google了下。ASCII是用来表示英文的一种编码规范,表示的最大字符数为256个,每个字符占1个字节。如果只用来表示英文应该是绰绰有余了,可是还要表示中文、阿拉伯文所以就有很大的不足了,于是就产生|了GB2312。很多人应该对这个比较了解,很多国内网页指定的编码都是GB2312的,它其实是对ASCII的一种扩展,是每个国家自己制定的编码规范,比如一个中文字符是由两个扩展ASCII字符表示。但因为GB2312是国家标准所以会有一些问题,记得我们小时候玩一些繁体游戏时需要借助一些南极星之类的软件转换编码吗?因为台湾很多用的都是big5编码,他和GB2312的编码格式还是类似的,会显示出一些奇怪的文字或是偶尔也会有个别汉字。后来因为GB2312所包含的汉字太少了,所以又扩展出来GBK编码。GBK包括了大部分的汉字,并且还加入了big5中几乎所有|的繁体字体(但big5和GBK中的繁体字体并不兼容)。之后还有GB18030编码,其实主要还是字符集的变

3化。ASCII—GB2312—GBK—GB18030他们都是向下兼容的,区分英文编码和中文编码的方法是高字节的最高位不为0,其实GB中文编码都是双字节字符集。因为GB编码都是国家标准,所以如果要解决中文问题不能从扩展ASCII角度入手了,于是出现了unicode和utf。unicode分为UCS-2、UCS-4,目前常用的是UCS-2是用2个字节为字符编码,可以表示的数为2^16=65535,基本可以表示欧美和大部分亚洲汉字,并且因为UC|S-2是双字节的所以每个汉字或英文都是由1个unicode构成,那拆字和统计字数比ASCII方便了很多。似乎unicode是比较完美了,可是它却有一个很致命的缺点,就是并不能和ASCII兼容。ASCII字符是单个字节的,比如"A"的ASCII是65。而Unicode是双字节的,比如"A"的Unicode是0065,这就造成了一个非常大的问题:以前处理ASCII的那套机制不能被用来处理Unicode了。另一个更加严重的问题是,C语言使用'/0'作为字符串结尾,而Unicode里恰恰有很多字符都有一个字节为0,这样一来,C语言的字符串函数将无法正常|处理Unicode,除非把世界上所有用C写的程序以

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1、本文档共61页,下载后即可获取全部内容。
2、此文档《Java编程技术中汉字问题的分析及解决 精品资料》由用户(158****5147)提供并上传付费之前 请先通过免费阅读内容等途径辨别内容,本站所有文档下载所得的收益全部归上传人(卖家)所有:如有侵权或不适当内容,请进行举报或申诉。
3、所有的PPT和DOC文档都被视为“模板”允许上传人保留音节日灵结构的情况下删减部份的内容,下裁前须认直查看,确认无误后再购买。
4、欧宝真人·(中国)科技有限公司网仅提供信息存储空间,仅对用户上传内容的表现方式做保护外理,无法对各卖家所售文档的直实性,完整性,准确性以及专业性等问题提供审核和保证,请谨慎购买。
5、本站文档的总页数,文档格式和文档大小以系统显示为准(内容中显示页数不一定正确),网站客服只以系统显示页数,文件格式,文档大小作为仲裁依据。

文档提供

发布者:158****5147

上传时间:2023-10-16 17:18:22

认证主体:齐**(个人认证)

IP归属:湖北省 武汉

相关标签

文档提供

发布者:158****5147

上传时间:2023-10-16 17:18:22

认证主体:齐**(个人认证)

IP归属:湖北省 武汉

相关标签