




已阅读5页,还剩10页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
几种常用编码的介绍 一 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进制数为 0 x310 x320 x33 表示成二进制数表示如下 001100010011001000110011 将二进制数每6位分成一组表示如下 001100010011001000110011 每6位分段后得到的四个数字分别是 1219851在base64编码表中查表对应的字符 MTIz所以字符串 123 编码后是 MTIz Base64编码 特例 例如我们要对字符串 12312 编码 123 对应的16进制数为 0 x310 x320 x330 x310 x32 表示成二进制数表示如下 0011000100110010001100110011000100110010 将二进制数每6位分成一组表示如下 001100010011001000110011001100010011001000 注意 因为原始字符串不是3的倍数 分出来后最后一组缺两位 需要补零 每6位分段后得到的七个数字分别是 121985112198在base64编码表中查表对应的字符 MTIzMTI不够一个6位分组单元的补0 不够一个编码单元 4个字节 的补 号 编码后的字符串是 MTIzMTI Base64编码 其他 base64编码后的数据只能出现base64里面的64个字符 用于补齐的 号和回车换行符 回车换行必须出现在4的整数倍个字符后 只能出现在每4个字符单元的最后一个或最后两个 举例 EFH ABC HIaCAB ABCDA ABC ABCA A BC AB C 2020 3 17 8 可编辑 Quotedprintable编码 Outlook翻译为 括上的可打印项目 这个编码非常简单 但是数据冗余量非常大 例如将 123 进行编码 123 对应的16进制数分别是0 x310 x320 x33编码后的字符串为 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平台不一样 0 xAABB怎么解析需要约定 所以出现了一种中间格式的字符集 称为通用转换格式 有UTF 7 7 5 8 16 32等 UTF 8编码 转换方法 128以内 Unicode UTF 8 128 2047 00000 xxxxxxxxxx 110 xxxxx10 xxxxxx2048 65535 xxxxxxxxxxxxxxxx 1110 xxxx10 xxxxxx10 xxxxxx65536 2097151 000 xxxxxxxxxxxxxxxxxxxxx 11110 xxx10 xxxxxx10 xxxxxx10 xxxxxx2097152 67108863 000000 xxxxxxxxxxxxxxxxxxxxxxxxx 111110 xx10 xxxxxx10 xxxxxx10 xxxxxx10 xxxxxx67108863 2147483647 0 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 1111110 x10 xxxxxx10 xxxxxx10 xxxxxx10 xxxxxx10 xxxxxx UTF 8编码 优缺点 优点 1 转换方便 只需位运算 2 ASCII字符集不用转换 不增加存储空间 3 没有字节序的问题 4 编码中不会出现0 xFF和0 xFE 因此这两个字符可以用来表用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区第一区位 区位码 0 x1001 区位码加上0 xA0A0就得到国标码
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年安全员竞聘安全服务题及答案
- 2025年BIM安全管理体系建设题及答案
- 2025年建筑施工企业三类人员-B-证笔试预测题
- 2025年安全生产管理模拟题答案解析
- 2025年维修工笔试高频题库与解析
- 2025年视距内无人机面试必考题
- 2025年文物保护师初级考试题集
- 课件中时间轴
- 2025年健身教练从业资格水平考核试题及答案解析
- 2025年建筑材料工程师专业知识考核试题及答案解析
- 人教版(2025新版)七年级下册数学第七章 相交线与平行线 单元测试卷(含答案)
- 厂房消防应急预案
- 景区开发政府战略框架协议书(2篇)
- 保洁投标书范本
- “雄鹰杯”全国小动物医师技能大赛考试题库(660题)
- 实验室隐患排查培训
- 九年级化学第三单元课题1分子和原子人教新课标版省公开课获奖课件说课比赛一等奖课件
- 宠物医疗器械创新与发展
- 《路由与交换技术》教学大纲
- 4《给植物画张“像”》教学设计-2024-2025学年科学一年级上册教科版
- 森林防火条例
评论
0/150
提交评论