我正在使用Office 365中的EWS API检索电子邮件。当我尝试检索时,将以某种编码格式检索发送邮件收件人的电子邮件地址,非ASCII电子邮件地址或Unicode电子邮件地址(api以编码后的格式返回格式)。是否有任何属性或类似属性可以检测电子邮件是否实际上是编码格式,以便我可以对其进行解码。
EmailMessage emailMessage;
foreach (var recipient in emailMessage.ToRecipients)
{
ERecipient recip = new ERecipient();
recip.EmailAddress = recipient.Address;
}
如何确定收件人地址是否真正编码?
答案 0 :(得分:5)
邮件地址是BASE64编码,“ B?”地址中的代表Base64编码。
同样,如果电子邮件地址格式为"=? GH2312? Q? = ae = a3 = a3? ="
,则表示正式字符集被编码为quoted-printable。
Q-报价可打印
B-BASE64
U-UUENCODE
因此,根据我的经验,如果不是以“ =?”开头,则可以调用解码功能。并以“?=”结尾,则表示该邮件未编码,我们不需要解码。