javamail 不能发送附件
我用javamail发送还附件的邮件,写好之后,用JUnit测都是正常的,但是web程序运行起来,页面调用之后,发出去的,都是没有附件的乱码邮件。
设置附件部分代码
//设置信件的附件
mdp=new MimeBodyPart();
FileDataSource fds=new FileDataSource(URI);
DataHandler dh=new DataHandler(fds);
mdp.setFileName((MimeUtility.encodeText("javamail本地文件附件.xls", "GBK", "B")));
mdp.setDataHandler(dh);
mm.addBodyPart(mdp);
message.setContent(mm);
JUnit测试代码
MailUtil.sendMail("homlly@qq.com", "java测试邮件", "java测试邮件","D:\\test.xml");
这样调就是正常的,但在web程序中传入同样的值,就是乱码,乱码类似如下,而且也没附件了:
------=_Part_20_21345486.1260347889515
Content-Type: text/html; charset=GBK
Content-Transfer-Encoding: base64
v9q+trHkuPzQxc+i
------=_Part_20_21345486.1260347889515
Content-Type: application/octet-stream; name="=?GBK?B?amF2YW1haWyxvrXYzsS8/ri9vP4ueGxz?="
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
filename="=?GBK?B?amF2YW1haWyxvrXYzsS8/ri9vP4ueGxz?="
0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAOwADAP7/CQAGAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAA
EAAABgAAAAEAAAD+////AAAAAAcAAAD/////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////9S