在 Outlook 中收到电子邮件时附件名称不正确
Incorrect attachment names when e-mail is received in Outlook
我正在通过 javax.mail 发送带附件的电子邮件。
当有西里尔字母或重音符号时,MS Outlook 显示附件名称如 "ATTxxx.xxx"(当只有标准拉丁符号时,一切正常)。当我使用网络界面时,名称是正确的。
添加附件:
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);
}
我在谷歌上搜索了很多,但没有找到任何解决方案。
解决方案是使用最新版本 javax.mail - 1.5.6,感谢 Bill Shannon。
我正在通过 javax.mail 发送带附件的电子邮件。 当有西里尔字母或重音符号时,MS Outlook 显示附件名称如 "ATTxxx.xxx"(当只有标准拉丁符号时,一切正常)。当我使用网络界面时,名称是正确的。
添加附件:
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);
}
我在谷歌上搜索了很多,但没有找到任何解决方案。
解决方案是使用最新版本 javax.mail - 1.5.6,感谢 Bill Shannon。