我通过javax.mail发送带附件的电子邮件。 MS Outlook显示附件名称,如" ATTxxx.xxx"当有西里尔或重音符号时(当只有标准拉丁符号时,一切都好)。当我使用Web界面时,名称是正确的。
添加附件:
private void attachFile(DataSource source, String attachmentName)
throws MessagingException, UnsupportedEncodingException {
MimeBodyPart filePart = new MimeBodyPart();
filePart.setDataHandler(new DataHandler(source));
filePart.setFileName(MimeUtility.encodeText(attachmentName, charsetUTF, null));
filePart.setHeader("Content-Transfer-Encoding", "base64");
mp.addBodyPart(filePart);
}
我搜索了很多,但没有找到任何解决方案。
答案 0 :(得分:0)
解决方案是使用最新版本的javax.mail - 1.5.6,感谢Bill Shannon。