DotNetOpenMail 邮件主题乱码解决方案

 

 

最近在项目中用DotNetOpenMail 这个组件发送Email,由于邮件主题是中文的,发送到邮箱后,邮件主题变成了乱码。

Subject:  =? gb2312 ? Q ? EMC = BC = AB = CB = D9 = C1 = AA = C3 = CB = BA = CF = D7 = F7 = BB = EF = B0 = E9 = C6 ?=

通过观察邮件头,我们可以看到,虽然主题的字符集是GB2312,但是却是使用的 是 QuotedPrintable(简写为Q)这种编码,正确的编码是Base64(简写为B)。

 

Subject:  =? gb2312 ? B ? RU1DvKvL2cGqw8u6z9f3u ++ w6cbav68gMTQ6Mjg =?=

 

 

 

EmailMessage emailMessage  =   new  EmailMessage();

                emailMessage.FromAddress 
=   new  EmailAddress(“××××××” );
                emailMessage.AddToAddress(
new  EmailAddress(“××××××” ));
                            
                emailMessage.Subject 
=  “EMC极速联盟合作伙伴期刊”;
                
// 以下两行代码用来解决邮件主题存在乱码的问题
                emailMessage.HeaderCharSet  =  Encoding.GetEncoding( " GB2312 " );
                emailMessage.HeaderEncoding 
=  EncodingType.Base64;

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值