对于任意长度的二进制文件,使用BASE64编码方法,规则如下:
1)将二进制代码24bit为单位划分,最后剩下8个bit,差了16个,"=="补齐,剩下16个bit,差了8个,“=”补齐 ”=“的二进制码 00111101
2)每24bit划分为 4 个 6 bit组
3)上面的6 bit的二进制代码可以表示0-63的数字,这里 0-25 用 A-Z表示,26-51 用 a-z ,52-61 用数字 0-9, 62 是 + 63 是 /
汉字使用quoted-printable 编码方法,编码规则如下:
1)对于“=”不可打印ASCII码和非ASCII码数据,将每个字节的二进制代码用两个十六进制数字表示,然后在前面加上“=”,
比如 ,发邮件的 二进制代码为:
1011011110100010 11010011 11001010 10111100 11111110
其对应的十六进制数为
B7A2D3CABCFE
=B7=A2=D3=CA=BC=FE 这十八个都是可打印ASCII字符,占用18字节,比原来多12字节
“=”的二进制码为00111101 编码结果为“=3D”
2)对于可打印ASCII字符,编码结果不变