fbpx
维基百科

Quoted-printable

Quoted-printableQP encoding,没有规范的中文译名,可译为可打印字符引用编码使用可打印字符的编码。Quoted-printable是使用可打印的ASCII字符(如字母、数字与「=」)表示各种编码格式下的字符,以便能在7-bit数据通路上传输8-bit数据, 或者更一般地说在非8-bit clean媒体上正确处理数据[註 1]。这被定义为MIME content transfer encoding,用于e-mail

QP使用「=」开头的转义字符. 一般限制行宽为76,因为有些软件限制了行宽.

综述 编辑

MIME定义了在e-mail中发送各种信息的方法, 包括非英语的其它语言文本信息, 使用非ASCII的其它字符编码。这些编码常常使用ASCII范围以外的值来编码字符,因此需要进一步被编码以便适用于non-8-bit-clean环境。Quoted-printable编码就是把任意字节序列映射为ASCII字符序列。Quoted-printable自身并不是一种字符编码方案, 而是一种在面向字节的编码时的数据编码布置(data coding layer),即由编码的字符序列如何表示为字节流QP是可逆的,即可以由原来的非ASCII字符流与QP编码后的字节流来回转换而不失信息。

Quoted-printable与Base64是两种基本的MIME内容传输编码, 如果通常的「8bit」编码不适用。如果文本不含很多非ASCII字符,quoted-printable编码的结果的可读性相当好[註 2]而且紧凑。但是,如果输入的大多数是非ASCII字符,那么quoted-printable编码将变得既不可读又非常低效。Base64并不是人可读的,但对于所有数据其成本均匀,适用于二进制数据与非拉丁字母语言文本。

Quoted-printable编码 编辑

任何8-bit字节值可编码为3个字符:一个等号「=」后跟随两个十六进制数字(0–9或A–F)表示该字节的数值。例如,ASCII码换页符(十进制值为12)可以表示为「=0C」, 等号「=」(十进制值为61)必须表示为「=3D」。除了可打印ASCII字符与换行符以外,所有字符必须表示为这种格式。

所有可打印ASCII字符(十进制值的范围为33到126)可用ASCII字符编码来直接表示, 但是等号「=」(十进制值为61)不可以这样直接表示。

ASCII的水平制表符(tab)与空格符, 十进制为9和32, 如果不出现在行尾则可以用其ASCII字符编码直接表示。如果这两个字符出现在行尾,必须QP编码表示为「=09」(tab)或「=20」(space)。

如果数据中包含有意义的行结束标志,必须转换为ASCII回车(CR)换行(LF)序列,既不能用原来的ASCII字符也不能用QP编码的「=」转义字符序列。 相反,如果字节值13与10有其它的不是行结束的含义,它们必须QP编码为=0D与=0A。

quoted-printable编码的数据的每行长度不能超过76个字符。为满足此要求又不改变被编码文本,在QP编码结果的每行末尾加上「软换行」(soft line break)。即在每行末尾加上一个「=」, 但并不会出现在解码得到的文本中。这种软换行也适用于文本的行非常长,超过了软件限制(例如,某些SMTP软件要求最大行长为1000个字符),这也是RFC 2821允许的。

一个轻微修改的quoted-printable用于消息头(message header);参见MIME#Encoded-Word

例子 编辑

If you believe that truth=3Dbeauty, then surely=20= mathematics is the most beautiful branch of philosophy. 

这是上述字符串的QP解码:

If you believe that truth=beauty, then surely mathematics is the most beautiful branch of philosophy.

类似编码方法 编辑

注释 编辑

  1. ^ 历史上,e-mail过去被认为是non-8-bit-clean, 因为不同的媒体被用来传输处理e-mail,有的并不是Internet. 现代ESMTP服务器是8-bit clean在大多数情况,参见8BITMIME.
  2. ^ 这意味着使用了一种ASCII兼容编码。而文本例如是EBCDIC编码的,QP编码后当然就不可读了。

参考文献 编辑

外部链接 编辑

参见 编辑

  • RFC 1521 (obsolete)
  • RFC 2045 (MIME)

quoted, printable, 或qp, encoding, 没有规范的中文译名, 可译为可打印字符引用编码或使用可打印字符的编码, 是使用可打印的ascii字符, 如字母, 数字与, 表示各种编码格式下的字符, 以便能在7, bit数据通路上传输8, bit数据, 或者更一般地说在非8, clean媒体上正确处理数据, 这被定义为mime, content, transfer, encoding, 用于e, mail, qp使用, 开头的转义字符, 一般限制行宽为76, 因为有些软件限制了行宽, 目录, 综. Quoted printable 或QP encoding 没有规范的中文译名 可译为可打印字符引用编码或使用可打印字符的编码 Quoted printable是使用可打印的ASCII字符 如字母 数字与 表示各种编码格式下的字符 以便能在7 bit数据通路上传输8 bit数据 或者更一般地说在非8 bit clean媒体上正确处理数据 註 1 这被定义为MIME content transfer encoding 用于e mail QP使用 开头的转义字符 一般限制行宽为76 因为有些软件限制了行宽 目录 1 综述 2 Quoted printable编码 3 例子 4 类似编码方法 5 注释 6 参考文献 7 外部链接 8 参见综述 编辑MIME定义了在e mail中发送各种信息的方法 包括非英语的其它语言文本信息 使用非ASCII的其它字符编码 这些编码常常使用ASCII范围以外的值来编码字符 因此需要进一步被编码以便适用于non 8 bit clean环境 Quoted printable编码就是把任意字节序列映射为ASCII字符序列 Quoted printable自身并不是一种字符编码方案 而是一种在面向字节的编码时的数据编码布置 data coding layer 即由编码的字符序列如何表示为字节流QP是可逆的 即可以由原来的非ASCII字符流与QP编码后的字节流来回转换而不失信息 Quoted printable与Base64是两种基本的MIME内容传输编码 如果通常的 8bit 编码不适用 如果文本不含很多非ASCII字符 quoted printable编码的结果的可读性相当好 註 2 而且紧凑 但是 如果输入的大多数是非ASCII字符 那么quoted printable编码将变得既不可读又非常低效 Base64并不是人可读的 但对于所有数据其成本均匀 适用于二进制数据与非拉丁字母语言文本 Quoted printable编码 编辑任何8 bit字节值可编码为3个字符 一个等号 后跟随两个十六进制数字 0 9或A F 表示该字节的数值 例如 ASCII码换页符 十进制值为12 可以表示为 0C 等号 十进制值为61 必须表示为 3D 除了可打印ASCII字符与换行符以外 所有字符必须表示为这种格式 所有可打印ASCII字符 十进制值的范围为33到126 可用ASCII字符编码来直接表示 但是等号 十进制值为61 不可以这样直接表示 ASCII的水平制表符 tab 与空格符 十进制为9和32 如果不出现在行尾则可以用其ASCII字符编码直接表示 如果这两个字符出现在行尾 必须QP编码表示为 09 tab 或 20 space 如果数据中包含有意义的行结束标志 必须转换为ASCII回车 CR 换行 LF 序列 既不能用原来的ASCII字符也不能用QP编码的 转义字符序列 相反 如果字节值13与10有其它的不是行结束的含义 它们必须QP编码为 0D与 0A quoted printable编码的数据的每行长度不能超过76个字符 为满足此要求又不改变被编码文本 在QP编码结果的每行末尾加上 软换行 soft line break 即在每行末尾加上一个 但并不会出现在解码得到的文本中 这种软换行也适用于文本的行非常长 超过了软件限制 例如 某些SMTP软件要求最大行长为1000个字符 这也是RFC 2821允许的 一个轻微修改的quoted printable用于消息头 message header 参见MIME Encoded Word 例子 编辑If you believe that truth 3Dbeauty then surely 20 mathematics is the most beautiful branch of philosophy 这是上述字符串的QP解码 If you believe that truth beauty then surely mathematics is the most beautiful branch of philosophy 类似编码方法 编辑百分号编码 data encoding in URL most used for text 字符值引用 text encoding in SGML HTML XML Rich Text Format Character encoding a component of text encoding 注释 编辑 历史上 e mail过去被认为是non 8 bit clean 因为不同的媒体被用来传输处理e mail 有的并不是Internet 现代ESMTP服务器是8 bit clean在大多数情况 参见8BITMIME 这意味着使用了一种ASCII兼容编码 而文本例如是EBCDIC编码的 QP编码后当然就不可读了 参考文献 编辑外部链接 编辑Online quoted printable decoder 页面存档备份 存于互联网档案馆 Online quoted printable encoder 页面存档备份 存于互联网档案馆 参见 编辑RFC 1521 obsolete RFC 2045 MIME 取自 https zh wikipedia org w index php title Quoted printable amp oldid 68792235, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。