Gmail 中的 C++ imap-utf7 实现
C++ imap-utf7 implementation in gmail
我正在尝试解码 GMails 发送的文本,应该是 utf7-imap(实际上,如果我没记错的话,utf8 编码在 utf7 中?)
我已阅读:https://en.wikipedia.org/wiki/UTF-7
我正在使用:https://github.com/skeeto/utf-7 to parse the (for example) the text - and mimetic (https://github.com/tat/mimetic) 来解析发送的原始电子邮件文本。
对应的header(本例中的主题)是:
Subject: =?UTF-8?B?15TXldeT16LXlCDXotecINeQ15kg15TXoteR16jXqiDXqtep15zXlQ==?=
=?UTF-8?B?150g16rXp9eV16TXqteZINeR16rXm9eg15nXqiDXnNep15vXmdeo15nXnQ==?=
评论中提到的编码,仅针对内容(body)。 Headers 应该只使用 ASCII,但某些电子邮件客户端确实会发送某种 8 位编码(ISO-8859-?)。我描述的消息不是这种情况。
我想我还缺少其他东西 - 我在哪里可以找到关于这个主题的文档?
我正在寻找C或C++的解决方案(我使用的utf7库是C,而mime解析库是C++)。 C++ 始终是更好的选择。
UTF-7 用于在 IMAP 协议中对 non-ASCII 邮箱名称进行编码。这与您的示例无关,该示例显示根据 RFC 2047.
以 MIME-encoded 值提交的 RFC 2822 主题
在您的示例中(带有“=?UTF-8?B?”前缀)解码很简单:后面的字符串(直到“?=”)是 utf-8 编码字符串的 base64 表示.
我正在尝试解码 GMails 发送的文本,应该是 utf7-imap(实际上,如果我没记错的话,utf8 编码在 utf7 中?)
我已阅读:https://en.wikipedia.org/wiki/UTF-7 我正在使用:https://github.com/skeeto/utf-7 to parse the (for example) the text - and mimetic (https://github.com/tat/mimetic) 来解析发送的原始电子邮件文本。
对应的header(本例中的主题)是:
Subject: =?UTF-8?B?15TXldeT16LXlCDXotecINeQ15kg15TXoteR16jXqiDXqtep15zXlQ==?=
=?UTF-8?B?150g16rXp9eV16TXqteZINeR16rXm9eg15nXqiDXnNep15vXmdeo15nXnQ==?=
评论中提到的编码,仅针对内容(body)。 Headers 应该只使用 ASCII,但某些电子邮件客户端确实会发送某种 8 位编码(ISO-8859-?)。我描述的消息不是这种情况。
我想我还缺少其他东西 - 我在哪里可以找到关于这个主题的文档?
我正在寻找C或C++的解决方案(我使用的utf7库是C,而mime解析库是C++)。 C++ 始终是更好的选择。
UTF-7 用于在 IMAP 协议中对 non-ASCII 邮箱名称进行编码。这与您的示例无关,该示例显示根据 RFC 2047.
以 MIME-encoded 值提交的 RFC 2822 主题在您的示例中(带有“=?UTF-8?B?”前缀)解码很简单:后面的字符串(直到“?=”)是 utf-8 编码字符串的 base64 表示.