Jmail 邮件乱码问题详解

1. 情景:

    在VS.NET 平台上利用w3 Jmail V4.5组件进行邮件发送程序开发,邮件内容可能是各种语言形式,比如“简体”、“繁体”、“日文”等内容.

 

2.问题:

   但实际开发后,发现发送的邮件内容对于非英文内容、标题等都会出现乱码。

 

3.解决方法:

     从网络上搜索到的信息来看,多数都认为问题出在jmail.Message 一些重要的属性设置上。我依照网友提供的帮助提示及成功经验来设置属性,但是问题依然存在;实在没辙,我只能采用最笨的方法,枚举所有可能的设置;最终发现了最佳参数设置可以解决上述问题。

      奇异的是,本人的设置的结果与网友的成功经验设置,简直就是完全相反。很奇怪到底是怎么一回事,然而实践是检验真理的唯一标准,无论怎么样我的设置方式是实践检验OK的。

       下面将列举我的设置方式,及与他人的显著差异。

    

      jmail.Message jmessage = new jmail.MessageClass();


       //郵件格式設置
      jmessage.Charset = "utf-8";  //采用utf-8形式,可以兼容多語言問題。
      jmessage.Silent = true;.

 

     //EnableCharsetTranslation屬性必須設置true,否則郵件內容、標題會亂碼 .
      jmessage.EnableCharsetTranslation = true ;

 

      jmessage.ContentTransferEncoding = "base64";
      jmessage.Encoding = "base64";

     

      //必須設置ISOEncodeHeaders為True,否則標題會出現亂碼。(此处与网友提供的设置完全相反)
      jmessage.ISOEncodeHeaders = true;  

 

     //Caution:如果有附件,ContentType不能设为 "text/html";而必须是 "text/plain";

     // 否则附件就會變成email body的一部分,而且是乱码。
      //jmessage.ContentType = "text/plain";
     

 

    采用上述设置后,不管邮件内容如何,都不会出现乱码了。

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值