版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
几种常用编码的介绍一、base64编码二、QuotedPrintable编码内容三、UTF8编码四、GB2312编码Base64是一种传输编码;是为了适应将任何计算机数据都表示成便于显示和排版的字符串;Base64中的64个字符是:“ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz+/0123456789”Base64编码-介绍2的6次方等于64。因为base64只有64个可用字符,所以它编码后的每个字节只能表示6个bit的信息内容;我们待编码的内容是8个bit的,所以就造成了编码以后的数据比原来的数据要长;6和8的最小公倍数是24,故base64的最小编码单元是24bit,四个字符。Base64编码-介绍Base64编码-举例例如我们要对字符串“123”编码:“123”对应的16进制数为:0x310x320x33;表示成二进制数表示如下:001100010011001000110011;将二进制数每6位分成一组表示如下:001100010011001000110011;每6位分段后得到的四个数字分别是:1219851在base64编码表中查表对应的字符:MT
I
z所以字符串”123”编码后是“MTIz”Base64编码-特例例如我们要对字符串“12312”编码:“123”对应的16进制数为:0x310x320x330x310x32;表示成二进制数表示如下:0011000100110010001100110011000100110010;将二进制数每6位分成一组表示如下:001100010011001000110011001100010011001000;注意:因为原始字符串不是3的倍数,分出来后最后一组缺两位,需要补零。每6位分段后得到的七个数字分别是:121985112198在base64编码表中查表对应的字符:MT
I
zMTI不够一个6位分组单元的补0,不够一个编码单元(4个字节)的补“=”号,编码后的字符串是”MTIzMTI=“Base64编码-其他base64编码后的数据只能出现base64里面的64个字符、用于补齐的‘=’号和回车换行符。回车换行必须出现在4的整数倍个字符后,‘=’只能出现在每4个字符单元的最后一个或最后两个。举例:EFH/ABC=HIaCAB==ABCDA+/=ABC=ABCA===,A=BC,AB=CQuotedprintable编码Outlook翻译为:“括上的可打印项目”这个编码非常简单,但是数据冗余量非常大。例如将“123”进行编码:“123”对应的16进制数分别是0x310x320x33编码后的字符串为”=31=32=33”编码后数据的长度是编码前数据长度的3倍,是一种非常简单但很不经济的一种编码方法。UTF-8编码-背景UTF-8意思是UniversalTransformationFormat通用转换格式;UTF-8用1-6个字节编码Unicode字符,用在网页上可以同一个页面显示中文简体、繁体及其他语言,称为万国码。ASCII字符集1-128大小写英语字符、数字、标点、换行制表控制等;ASCII扩展字符集128-255一些欧洲文字,拉丁字母Unicode字符集:所有字符用两个字节表示,高字节为零的表示ASCII字符集内容,高字节不是零的代表了其他语言里的字符,如汉语、日语、韩语、越南语等。UTF-8编码-产生原因因为Unicode表示ASCII字符时不经济:一个字符用两个字节表示,且主机间传输时存在字节序的问题:x86平台和ppc平台不一样,0xAABB怎么解析需要约定。所以出现了一种中间格式的字符集,称为通用转换格式,有UTF-7、-7.5、-8、-16、-32等。UTF-8编码-转换方法128以内:Unicode=UTF-8;128-2047:00000xxxxxxxxxx->110xxxxx10xxxxxx2048-65535:
xxxxxxxx
xxxxxxxx->1110xxxx10xxxxxx10xxxxxx65536-2097151:
000xxxxxxxxxxxxx
xxxxxxxx->11110xxx10xxxxxx10xxxxxx
10xxxxxx2097152-67108863:
000000xxxxxxxxxx
xxxxxxxx
xxxxxxx->111110xx10xxxxxx10xxxxxx
10xxxxxx
10xxxxxx67108863-2147483647:
0xxxxxxxxxxxxxxx
xxxxxxxx
xxxxxxxx->1111110x10xxxxxx10xxxxxx
10xxxxxx
10xxxxxx
10xxxxxxUTF-8编码-优缺点优点:(1)转换方便,只需位运算;(2)ASCII字符集不用转换,不增加存储空间;(3)没有字节序的问题;(4)编码中不会出现0xFF和0xFE,因此这两个字符可以用来表用UTF-16或UTF-18文本;缺点:(1)变长,无法从Unicode字符长度判断转为UTF-8后的字符长度;(2)拉丁字符时Unicode的子集不是utf-8的子集,需要转换;(3)大部分两个字节的Unicode字符被扩展成3个字节;(中文用UTF-8编码后绝大多数情况下会变长)GB2312编码GB2312编码和UTF8编码不是并列的关系;GB2312收录了6763个汉字和682个非汉字图形字符;整个字符集分94个区,每区94个区位,每区位表示一个字符;1-9区为特殊符号,16-55区按拼音排序为一级汉字,56-97区按部首笔画排序为二级汉字;用区位表示的码叫区位码:例如“啊”位于第16区第一区位,区位码=0x1001;区位码加上
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 17980.39-2026农药田间药效试验准则第39部分:杀菌剂防治柑橘贮藏病害
- 2026年大学第四学年(特色小吃)地方小吃制作工艺测试题及答案
- 四川省成都市第二十三中学2026届十二校初三下学期3月联考英语试题含解析
- 浙江省宁波市市级名校2025-2026学年普通高中毕业班质量检查化学试题含解析
- 山东泰安2026年初三冲刺诊断考试物理试题试卷含解析
- 山东省菏泽市牡丹区二十一初级中学2025-2026学年初三第四次适应性训练英语试题试卷含解析
- 2026年全球智慧城市发展的经验交流
- 2026年复杂电气系统的故障检测与诊断
- 高血压危象监测与护理方案
- 放射治疗放射性污染处理流程
- 业财融合:提升企业成本控制效率的实践策略
- 小学数学国培二次培训
- 2025年衡阳市商品房买卖合同(正式版本)
- 离心泵检修培训
- 烹饪工艺学(第2版) 课件 单元9调色和调香工艺
- 银屑病的全英文
- 绿色燃料研究
- 统计局能源培训
- 铝电解工(铝电解操作工)职业资格(技师)考试题库-下(多选、判断题)
- 牧场物语-矿石镇的伙伴们-完全攻略
- 高等职业学校学前教育专业实训教学条件建设标准
评论
0/150
提交评论