我正在使用办公室365中的EWS API检索电子邮件。当我尝试检索时,将以某种编码格式(以编码格式返回的api)检索发送邮件收件人电子邮件地址,非ASCII电子邮件地址或Unicode电子邮件地址。是否有任何属性或类似的东西来检测电子邮件是否实际上是编码格式,以便我可以解码。
EmailMessage emailMessage;
foreach (var recipient in emailMessage.ToRecipients)
{
ERecipient recip = new ERecipient();
recip.EmailAddress = recipient.Address;
}
如何识别收件人地址是否实际编码?
邮件地址是BASE64编码,“B?”在地址中代表Base64编码。同样,如果电子邮件地址表单是"=? GH2312? Q? = ae = a3 = a3? ="
,则表示正式字符集编码为quoted-printable。
Q - 报价可打印
B - BASE64
U - UUENCODE
所以从我的经验来看,你可以调用解码函数,如果它不是以“=?”开头的话。并以“?=”结尾,邮件不编码,我们不需要解码。