与Q编码和引用可打印的差异?

时间:2018-01-30 11:51:00

标签: ruby encoding mime

如果我问初学者问题,我道歉。

请问rfc2047 Quoted-Printable Content-Transfer-Encoding rfc2045中的 Q编码有什么不同?

  

“Q”编码类似于“Quoted-Printable”内容 -
  RFC 2045中定义的传输编码。

我正在尝试使用ruby的unpack实现解码逻辑。我已阅读以下页面,并尝试了解为什么 first.gsub('_','') Q encoding 所必需的。

Is there a way to decode q-encoded strings in Ruby?

1 个答案:

答案 0 :(得分:0)

对我来说,再次阅读RFC 2047,我已经意识到,在下划线编码为 = 5F 的情况下,下面的方法不能正确解码下划线。

submit

相反,正如rfc2047下面的句子所描述的那样,我首先将文字下划线替换为 = 20 ,然后将其解压缩。

  

请注意,即使是SPACE,“_”也始终表示十六进制20   character在字符集中占用不同的代码位置   使用

我编码如下。

decoded = m[3].unpack("M").first.gsub('_',' ')