1. MIME协议写邮件写法
2. 在用Mime协议时需要下载两个包JavaMail 和JavaBeans Activation Framework下面是利用mime协议去发邮件并且带图片和附件。
3. 代码如下:
4. package com.csdn.java07;
5. import java.io.FileNotFoundException;
6. import java.io.FileOutputStream;
7. import java.io.IOException;
8. import java.util.Properties;
9. import javax.activation.DataHandler;
10.import javax.activation.FileDataSource;
11.import javax.mail.Message;
12.import javax.mail.MessagingException;
13.import javax.mail.Session;
14.import javax.mail.internet.AddressException;
15.import javax.mail.internet.InternetAddress;
16.import javax.mail.internet.MimeBodyPart;
17.import javax.mail.internet.MimeMessage;
18.import javax.mail.internet.MimeMultipart;
19.import javax.mail.internet.MimeUtility;
20.publicclass Mimeemail {
21.publicstaticvoid main(String[] args) throws AddressException,
22.MessagingException, FileNotFoundException, IOException {
23.// 1,创建连接
24.MimeMessage message = new MimeMessage(Session
25..getInstance(new Properties()));
26.// 2,设置邮件属性
27.message.setFrom(new InternetAddress("aa@121113.com"));
28.message.setRecipient(Message.RecipientType.TO, new InternetAddress(
29."123@qw.com"));
30.message.setSubject("hi 你好!");
31.//3、设置正文
32.MimeBodyPart mbp = new MimeBodyPart();
33.mbp.setContent("你好呀!!<br/><img src='cid:1.jpg'><br/><img src='cid:2.jpg'><br/>",
34."text/html;charset=gb2312");
35.//4、设置图片
36.MimeBodyPart image = new MimeBodyPart();
37.image.setDataHandler(new DataHandler(new FileDataSource("src//f.jpg")));
38.image.setContentID("1.jpg");
39.MimeBodyPart image1 = new MimeBodyPart();
40.image1.setDataHandler(new DataHandler(new FileDataSource("src//qq.jpg")));
41.image1.setContentID("2.jpg");
42.//5、设置附件
43.MimeBodyPart attch = new MimeBodyPart();
44.DataHandler dh = new DataHandler(new FileDataSource("src//大笑.mp3"));
45.String name = dh.getName();
46.attch.setDataHandler(dh);
47.attch.setFileName(MimeUtility.encodeText(name));// 设置中文编码
48.//描述关系
49.//图片与正文的描述关系
50.MimeMultipart mm = new MimeMultipart();
51.mm.addBodyPart(mbp);
52.mm.addBodyPart(image);
53.mm.addBodyPart(image1);
54.mm.setSubType("related");
55.//图片与正文的 bodypart
56.MimeBodyPart part = new MimeBodyPart();
57.part.setContent(mm);
58.//附件与以上的bodypart关系
59.MimeMultipart m = new MimeMultipart();
60.m.addBodyPart(part);
61.m.addBodyPart(attch);
62.m.setSubType("mixed");
63.//把MIME消息设置到message中
64.message.setContent(m);
65.message.saveChanges();
66.message.writeTo(new FileOutputStream("D://4.eml"));
67.}
68.}