QP编码   所属分类:编码转换类   命令来源:超级模块

操作系统支持:Windows

    用于Quoted-Printable编码、URL编码

语法: 字节集  编码转换.QP编码 (原文, 编码类型)

参数名

描 述

原文

字节集, , 要进行编码的字节集

编码类型

逻辑型, 可空, 真为URL,假为QP,默认为QP

例程:

说明

      QP(Quoted-Printable)也是MIME邮件中常用的编码方式之一。同Base64 一样,它也将输入的字符串或数据编码成全是ASCII码的可打印字符串。Quoted-Printable编码的基本方法是:输入数据在 33-60、62-126范围内的,直接输出;其它的需编码为"="加两个字节的HEX码(大写)。为保证输出行不超过规定长度,可在行尾加"=\r\n"序列作为软回车。

QP编码规则如下:
    规则1:除了换行符,其它任何8位长度的字节必须被表示成一个"="号加上高四位的十六进制数
            和低四位的十六进制数,十六进制数是用"0123456789ABCDEF"的ASCII字符码表示,其中"ABCDEF"都必须是大写;
    规则2:当8位长度的字节值在33至60(包括33和60),62至126(包括62和126)之间时,直接用该数据对应的ASCII码来表示;
    规则3:当8位长度的字节值是9和32时,用该数据对应的ASCII码(9:TAB(HT),32:SPACE)来表示,
            但若是出现在行尾则必须按规则1进行转换;
    规则4:对于CRLF换行符必须用"=0D=0A"来代替;
    规则5:QP编码每行不得超过76个字符(不包含最后的"\r\n"两个字符),否则必须换行,
            换行方法是:在结尾处加上"=\r\n"
      其它:符号"-"不用进行QP编码,所以不要用"-"符号来表示实体之间的分界,
            最好用"=_"来代替,对于"!"#$[\]^'{|}~"这些字符必须按规则1进行转换.

参见:  QP编码.e