求助!关于JavaMail发送中文名附件乱码的问题

norwegianwood 2002-02-01 11:22:26
不知为什么发送的邮件中附件的中文名变成乱码,请问这个问题如何解决,谢谢!
下面是添加附件的代码段,需要的话,我给全部代码。qq: 11362918

// create and fill the first message part
MimeBodyPart mBodyContent = new MimeBodyPart();
if (content != null)
mBodyContent.setContent(content, messageContentMimeType);
else
mBodyContent.setContent("", messageContentMimeType);
mPart.addBodyPart(mBodyContent);
// attach the file to the message
if (attachedFiles != null) {
for (int i=attachedFiles.size()-1; i>=0; i--) {
String attachedFileName = (String) attachedFiles.elementAt(i);
MimeBodyPart mBodyPart = new MimeBodyPart();

FileDataSource fds = new FileDataSource(basePath + attachedFileName);
mBodyPart.setDataHandler(new DataHandler(fds));
mBodyPart.setFileName(attachedFileName);
if(debug) {
System.out.println(attachedFileName);
System.out.println(mBodyPart.getFileName());
}
mPart.addBodyPart(mBodyPart);
}
}
msg.setContent(mPart);
...全文
68 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuyaoliang 2002-02-27
  • 打赏
  • 举报
回复
给文件名按一定的字符集编码之后再setFileName
hexiaofeng 2002-02-27
  • 打赏
  • 举报
回复
搜索论坛
xuyaoliang 2002-02-27
  • 打赏
  • 举报
回复
在设置文件名的时候必须要编码

把你的语句稍微改动一下就OK
name = MimeUtility.encodeWord(name, charset, null);
part.setFileName(name);
skyyoung 2002-02-01
  • 打赏
  • 举报
回复
shmilu@sina.com 给你个Detect是什么中文的工具,从而得出正确的解码。

23,408

社区成员

发帖
与我相关
我的任务
社区描述
Java 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧