Indy IMAP4无法正确显示德语符号

时间:2013-09-13 07:26:03

标签: delphi gmail indy indy10

我正在使用TIdIMAP4组件用我的GMail邮箱的邮件填充字符串网格。

var IMAPClient: TIdIMAP4;

有些消息有德语变音符号。当我调用IMAPClient。 RetrieveAllHeaders (MyMsgList)时,字符串网格按预期填充(显示所有变音符号),但是没有UID(我猜,RetrieveAllHeaders只是不提取UID)。

当我调用IMAPClient时。 UIDRetrieveAllEnvelopes (MyMsgList)消息的所有其他属性都存在,但标题显示在abracadabra中(=?ISO-8859-1?Q?_Die_Br = FCcke_von_Arnheim? =) //应该是'DieBrückevonArnheim'

我已阅读了许多支持性帖子,但无法找到答案为什么IndyIMAP4错误地处理德语符号。 有什么想法吗?

1 个答案:

答案 0 :(得分:3)

RetrieveAllHeaders()解码它检索的原始数据。 UIDRetrieveAllEnvelopes()仅检索原始数据,但不解码。您可以通过调用DecodeHeader()单元中的Indy IdCoderHeader函数手动解码原始标题。