解析Java中文乱码的处理方法_解析Java中文乱码的处理方法(3)

public void setContent(Object aObject, String aContentType)

{

this.content = aObject;

if (EmailUtils.isEmpty(aContentType))

{

this.contentType = null;

}

else

{

// set the content type

this.contentType = aContentType;

// set the charset if the input was properly formed

String strMarker = "; charset=";

int charsetPos = aContentType.toLowerCase().indexOf(strMarker);

if (charsetPos != -1)

{

// find the next space (after the marker)

charsetPos += strMarker.length();

int intCharsetEnd =

aContentType.toLowerCase().indexOf(" ", charsetPos);

if (intCharsetEnd != -1)

{

this.charset =

aContentType.substring(charsetPos, intCharsetEnd);

}

else

{

this.charset = aContentType.substring(charsetPos);

}

}

}

}

email.send();的send方法将调用

public void buildMimeMessage() throws EmailException

{

try

{

this.getMailSession();

this.message = new MimeMessage(this.session);

if (EmailUtils.isNotEmpty(this.subject))

{

if (EmailUtils.isNotEmpty(this.charset))

{

this.message.setSubject(this.subject, this.charset);

}

else

{

this.message.setSubject(this.subject);

}

}

// =====================================================

// Start of replacement code

if (this.content != null)

{

this.message.setContent(this.content, this.contentType);

}

// end of replacement code

// =====================================================

else if (this.emailBody != null)

{

this.message.setContent(this.emailBody);

}

else

{

this.message.setContent("", Email.TEXT_PLAIN);

}

if (this.fromAddress != null)

{

this.message.setFrom(this.fromAddress);

}

else

{

throw new EmailException("Sender address required");

}

if (this.toList.size() + this.ccList.size() + this.bccList.size() == 0)

{

throw new EmailException(

"At least one receiver address required");

}

if (this.toList.size() > 0)

{

this.message.setRecipients(

Message.RecipientType.TO,

this.toInternetAddressArray(this.toList));

}

if (this.ccList.size() > 0)

{

this.message.setRecipients(

Message.RecipientType.CC,

this.toInternetAddressArray(this.ccList));

}

if (this.bccList.size() > 0)

{

this.message.setRecipients(

Message.RecipientType.BCC,

this.toInternetAddressArray(this.bccList));

}

if (this.replyList.size() > 0)

{

this.message.setReplyTo(

this.toInternetAddressArray(this.replyList));

}

if (this.headers.size() > 0)

{

Iterator iterHeaderKeys = this.headers.keySet().iterator();

while (iterHeaderKeys.hasNext())

{

String name = (String) iterHeaderKeys.next();

String value = (String) headers.get(name);

this.message.addHeader(name, value);

}

}

if (this.message.getSentDate() == null)

{

this.message.setSentDate(getSentDate());

}

if (this.popBeforeSmtp)

{

Store store = session.getStore("pop3");

store.connect(this.popHost, this.popUsername, this.popPassword);

}

}

catch (MessagingException me)

{

throw new EmailException(me);

}

}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值