转载
// TODO Auto-generated method stub
Properties props =newProperties();Session session =Session.getInstance(props);Message message =newMimeMessage(session);// message.setFrom(new InternetAddress("duan_lonshan@126.com"));Multipart msgmultipart =newMimeMultipart("mixed");//mixed表示混合性,这里因为有文本,附件,所以是混合的。message.setContent(msgmultipart);//添加附件图片BodyPart picpart =newMimeBodyPart();msgmultipart.addBodyPart(picpart);DataSource ds1 =newFileDataSource("e:\\login.jpg");DataHandler dh1 =newDataHandler(ds1);picpart.setDataHandler(dh1);picpart.setFileName("login.jpg");//添加附件文件BodyPart mg =newMimeBodyPart();msgmultipart.addBodyPart(mg);DataSource ds2 =newFileDataSource("e:\\test.xls");DataHandler dh2 =newDataHandler(ds2);mg.setDataHandler(dh2);mg.setFileName("mess.xls");//添加文本内容BodyPart msgpart =newMimeBodyPart();msgmultipart.addBodyPart(msgpart);Multipart bodyMultipart =newMimeMultipart("related");//这里的图片和文本是在一起显示的所以他们是关系型的。msgpart.setContent(bodyMultipart);BodyPart jpgpart =newMimeBodyPart();BodyPart htmlpart =newMimeBodyPart();bodyMultipart.addBodyPart(jpgpart);bodyMultipart.addBodyPart(htmlpart);//文本中添加图片DataSource ds =newFileDataSource("e:\\background.jpg");DataHandler jpgdh =newDataHandler(ds);jpgpart.setDataHandler(jpgdh);jpgpart.setHeader("Content-Location","http://www.test.com/bg.jpg");//这里的地址就是跟img标签中的地址相同。然后就可以在文本中直接显示出来图片。这里的Content-Location固定的,htmlpart.setContent("this is the first email <img src='http://www.test.com/bg.jpg'>","text/html;charset=gb2312");message.saveChanges();//保存数据OutputStream os =newFileOutputStream("e:\\dome3.eml");//写出到的文件message.writeTo(os);