2

我有一个电子邮件正文(char[] 缓冲区,通过 POP3 检索),它显然使用了 ISO 代码页的一些标记,例如一个主题

Daß ißt ään schlümmer Test

被编码为

=?iso-8859-1?Q?Da=DF_i=DFt_=E4=E4n_schl=FCmmer_TDest

有什么预制的东西我可以用来把它变成一个(可读的)CStringW吗?

(环境:Win32、C++、VC2008。)

4

1 回答 1

4

这种格式称为 anencoded-word并且由RFC 2047定义。形式是=?<charset>?<Q or B>?<encoded data>?=,其中数据被编码为 base-64 (B) 或看起来像quoted-printable (Q) 但不完全的东西(因为_意味着一个空格)。

一些 示例C++ 解码器将使您获得一个字节字符串。然后,您必须使用字符集进行解码以获取 Unicode 字符串。

于 2011-09-03T08:51:14.820 回答