题
Subject: Re:
=?UTF-8?Q?Th=E1=BA=A7y_g=E1=BB=ADi_b=C3=A0i_t=E1=BA=ADp_cho_em_v=E1=BB?=
=?UTF-8?Q?=9Bi.?=
.
我收到了一个带有此主题标题的电子邮件。应该如何解码?
解决方案
它是一个 mime编码 - 字。语法是=?
charset?
transfer-encoding?
encoded-data?=
DodeDed-dataB
。转移编码是Q
ase64或byte[]
Oted-可打印。
解码:
- 将编码字分成其3个部分。
- 根据其传输编码(第2部分)将数据(第3部分)解码为
=
。在这种情况下,使用Q编码,因此用相应的八位字节替换与相应的八位字节的Thầy_gửi_bài_tập_cho_em_với.
Xx 序列。这为您提供了两个字节阵列[84,104,225,186,167,121,95,103,225,187,173,105,95,98,195,160,105,95,195,160,105,95,116,225,186, 173,112,95,99,104,111,95,101,109,95,118,225,187]和[155,105,46]。 - 根据指定的编码解码这些字节阵列。
在该特定示例中,两个编码字是无效:第一个缺少3字节UTF-8字符的路径字节,第二个是用路径开始字节。但是组合,它们是有效的utf-8,并解码到字符串生成古典etagcode(谷歌转换为“老师发送给我锻炼”。)
其他提示
这在RFC 2047中定义: http://tools.ietf.org/html/rfc2047
参见编码的第4节。我不确定是否有什么基础框架中的任何东西,可以正确处理此/处理。
编辑:这是一个人的尝试: http://vsevolodp.blogspot.com/2010/11/how-to-decode-encoded -word-header.html
不隶属于 StackOverflow