`
wanxiaotao12
  • 浏览: 453002 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

使用JavaMail发送email中文附件文件名的乱码问题

 
阅读更多
JavaMail API 是Java平台的一个可选包,同时也是J2EE规范的一部分。它提供了一个独立于系统平台和具体协议的邮件框架,可以用以实现email相关的各项应用。Sun所实现的的最新版本(JavaMail API 1.4 EA )中已经对中文有很好的支持,但发送中文名称的附件仍然会出现乱码问题 。 这并不是Sun本身造成的bug,而是因为MIME规范要求附件标题必须是US-ASCII字符,同时又不允许对参数进行编码,因此JavaMail API中并不会主动对含有非ASCII字符的文件名进行编码处理。但是,JavaMail同时也提供了工具类使得用户可以方便的对类似情况进行手工处理:
对文件名进行编码:
mbp.setFileName(MimeUtility.encodeText(filename));
对文件名进行解码:
String filename = MimeUtility.decodeText(part.getFileName());
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics