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.?=
我收到了一封有此主题标题的电子邮件。应该如何解码?
答案 0 :(得分:6)
这是一个MIME encoded-word。语法为=?
charset ?
transfer-encoding ?
encoded-data ?=
。转移编码为B
ase64或Q
uoted-printable。
解码它:
byte[]
。在这种情况下,使用Q编码,因此将=
xx 序列替换为相应的八位字节。这给你两个字节数组[84,104,225,186,167,121,95,103,225,187,173,105,95,98,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,并解码为字符串Thầy_gửi_bài_tập_cho_em_với.
(Google翻译为“老师让我去锻炼。”)
答案 1 :(得分:6)
这在RFC 2047中定义: http://tools.ietf.org/html/rfc2047
见关于编码的第4节。我不确定基础框架中是否存在处理此问题的任何内容/正确处理此问题。
编辑:这是一个人对此的尝试:http://vsevolodp.blogspot.com/2010/11/how-to-decode-encoded-word-header.html