




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
WelcometoHUAWEITechnologiespresentation
字符集与编码2013年5月目录字符集与编码方法Java中字符的表示与处理JavaWeb编程中文乱码解决方法Log4j写日志中文乱码SecureCRT显示中文乱码字符集与编码字符集(CharacterSet)字符编码(CharacterEncoding)字符集字符编码对应语言ASCIIASCII英语ISO8859-1ISO8859-1拉丁字母GB2132GB简体中文GBKGBK简体中文GB18030GB18030简体中文Big5Big5繁体中文UnicodeUTF-8多国语言ASCII码ASCII ASCII使用7个比特(bit)进行字符编码,最多可以表示2^7(128)个字符,这些字符包括了大小写英文字母、阿拉伯数字、标点符号、控制字符和其他符号。
每个字符用一个字节表示,每个字节的最高位为0。
例如:字符“A”在用ASCII码中用2进制的“01000001”表示,换算成10进制为“65”。ISO8859-1ISO8859-1 ISO8859-1,又称Latin-1,是在ASCII的基础上,使用8比特编码,新增了一些字符。新增的字符主要用来支持部分欧洲国家所使用的语言,例如:德语、葡萄牙语和西班牙语等。也就是说,ISO8859-1兼容ASCII。GB21321981年,开始使用国家标准《信息交换用汉字编码字符集-基本集》,简称GB2312。GB2312使用双字节编码,一共包含了7445个字符,包括了6763个常用的汉字。对汉字分成了两级,一级为常用字,有3755个字符,按照拼音排序,二级为次常用字,包括3008个字符,按照部首排序。GB2312主要应用在中国大陆和新加坡,几乎所有的中文系统和国际化的软件都支持GB2312,同时GB2312兼容ASCII。在GB2312的基础上又进行了扩充。在1995年,推出了《汉字内码扩展规范》,简称GBK。GB18030-2000编码标准是由信息产业部和国家质量技术监督局在2000年联合发布的,GB18030编码标准是在原来的GB2312和GBK编码标准的基础上进行扩充,增加了一些新的字符,特别是一些少数民族使用的字符。它的主要目的是为了解决一些生、偏、难字的问题。Unicode1991年Unicode把世界上几十种文字整合在一个字符集中,Unicode中的每个字符都有一个唯一的数字进行表示。Unicode是由Unicode组织进行相关标准的制订与推广。UTF是Unicode/UCSTransformationFormat(统一字符集/统一字符编码转换格式)的缩写,UTF就是Unicode的一种字符编码(转换)方法。Unicode组织推荐使用的是UTF-8和UTF-16,UTF-8是一种变长的编码方式,也是当前Unicode最常用的一种字符编码(转换)方法。UTF-8编码方式:CodepageUnicode不兼容中文的GB2312、GBK和Big5等字符集,也不兼容其他国家的字符集,为了能顺利的实现Unicode和其他字符集之间的转换,需要使用codepage技术。codepage是各种字符集和Unicode之间的映射表。codepage字符集936简体中文GBK950繁体中文Big565001UTF-8932日文JAVA字符Java中的字符主要通过char、byte和String这3种类型进行表示。Char表示的是1个Unicode字符,byte是字节,String是字符串,它是多个char类型字符的序列。字符串在网络传输或者存储前需要转换成byte数组。从网络接收或从存储设备读取内容的一般是byte数组。JAVAWEB中文乱码调用JSP页面显示乱码通过浏览器调用JSP页面,在浏览器中所有的中文内容出现乱码。原因是JSP保存文件默认使用ISO8859-1编码,该字符集不支持中文。首先确认本JSP在编辑器中保存文件内容时,使用的是UTF-8的编码格式,然后在JSP页面的开始,添加<%@
charset=UTF-8,pageEncoding="UTF-8"%>就可以解决这个中文乱码问题。演示程序index.jspJAVAWEB中文乱码调用Servlet页面显示乱码通过浏览器调用Servlet,Servlet在浏览器中显示的内容出现乱码。在Servlet使用response对输出内容之前,先执行response.setContentType("text/html;charset=utf-8"),设定输出的内容的编码为UTF-8。演示程序servlet01.javaJAVAWEB中文乱码POST表单传递参数乱码通过JSP页面、HTML页面或者Servlet中的表单元素提交参数给对应的JSP页面或者Servlet,而JSP页面或者Servlet接收的中文参数值乱码。解决办法1:在接收POST提交的参数之前,使用request.setCharacterEncoding(“UTF-8”)设定接收参数的内容使用UTF-8编码。解决方法2:使用过滤器技术,在接收参数之前,设定传递的参数内容的编码是UTF-8。演示程序index.jsp、servlet01.javaLog4j中文乱码Log4j写日志文件,文件中的中文出现乱码.log4j通过QuietWriter写日志,QuietWriterextendsFilterWriter,FilterWriterextendsWriter,而Writer写入的是字符流,对字符集比较敏感。英文系统一般默认latin-1字符集,只能处理半角,通过encoding指定字符集后,能够正确输出指定字符集的字符流。log4j.appender.A1=org.apache.log4j.RollingFileAppender
log4j.appender.A1.Encoding=UT
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 江西省宜春重点中学2022-2023学年联考高二下学期语文期末试卷(含答案)
- 北京市西城区2023-2024学年五年级下学期语文期末试卷(含答案)
- 2025护工与老年人直接雇佣合同
- 2025合同法制的创新与发展趋势
- 2025中介租赁合同书范本
- 2025年科技创业前如何精准签订技术转让合同
- 2025年深圳市租房租赁合同简易模板
- 2025年合作伙伴间的合同范本
- 2025铝材买卖合同模板范本
- 《中国股市发展历程》课件
- 医院培训课件:《产前准备-为顺产做准备》
- 《管理学原理》(课件)
- 长城汽车2025人才测评答案
- 幼儿园法制教育讲座
- 《中华人民共和国产品质量法》知识培训
- 技能人才评价命题技术规程
- 中职不等式的试题及答案
- 深信服aES产品技术白皮书-V1.5
- Unit+2+Expressing+yourself+PartB(课件)【知识精研】人教PEP版(2024)英语三年级下册
- 电子商务与电子政务的互补关系
- 《安全人机工程学》试题及答案
评论
0/150
提交评论