javamail接收邮件时怎样能像163那样,在邮件正文下面显示都有什么附件 10

 我来答
cherry_chengzi
2011-05-16
知道答主
回答量:19
采纳率:0%
帮助的人:21.7万
展开全部
如下是我之前做的用javamail发送邮件(包含附件,且附件是html网页形式)的范例,我稍微修改了下,你参考参考,希望可以帮到你,我之前是发给OutLook的,没有发给163试过,不过我想应该差别不是很大,你试试:
import java.util.*;
import javax.mail.*;
import javax.mail.internet.*;
import javax.naming.*;
import javax.activation.DataHandler;
import javax.activation.FileDataSource;
import com.tbcn.ceap.party.User;
import com.tbcn.ceap.party.custom.bizOper.UserpropertyBizOper;

InternetAddress[] address = null;
String mailTo = "";
boolean sessionDebug = false;
try {
// 设定所要用的Mail 伺服器和所使用的传送协定
java.util.Properties props = System.getProperties();
props.put("mail.host","接收Mail的服务器地址或名称");
props.put("mail.transport.protocol","smtp"); // <=设定所使用的protocol为SMTP(Small Mail Transfer Protocol)
// 产生新的Session 服务
javax.mail.Session mailSession = javax.mail.Session.getDefaultInstance(props,null);
mailSession.setDebug(sessionDebug);
Message msg = new MimeMessage(mailSession);
// 设定传送邮件的发信人
//msg.setFrom(new InternetAddress("想要显示的发件人名称"));
msg.setFrom(new InternetAddress("发件人地址"));
// 设定传送邮件至收信人的信箱
address = InternetAddress.parse("收件人",false);
msg.setRecipients(Message.RecipientType.TO, address);
// 设定信中的主题
msg.setSubject("邮件主题","big5");
// 设定送信的时间
msg.setSentDate(new Date());

//设定信件内容
String newMailBody = new String();
BodyPart mdp = new MimeBodyPart();
mdp.setContent("邮件内容", "text/html;charset=UTF-8");
Multipart mm = new MimeMultipart();
mm.addBodyPart(mdp);
msg.setContent(mm);

//设定附件信息
if(附件内容字串!=null){
mdp=new MimeBodyPart();
try{
DataHandler dh = new DataHandler(附件内容字串,"text/html;charset=UTF-8");
mdp.setDataHandler(dh);
FileDataSource fds = new FileDataSource("附件名字.html");
mdp.setFileName(new String(fds.getName().getBytes("utf-8"),"iso8859-1"));
}catch(Exception ex){
print("message_1--------------"+ex);
}
mm.addBodyPart(mdp);
msg.setContent(mm);
}
// 送信
Transport transport=mailSession.getTransport("smtp");
try{
transport.send(msg);
}catch(Exception ex1){
print("message_1--------------"+ex1);
}
}catch(MessagingException mex){
mex.printStackTrace();
}
追问
我想要收邮件时怎么处理附件
追答
收到的附件就像我们正常发邮件的附件一样,邮件另存就可以了,也可以直接打开看。我这里给的附件是以HTML文件的格式。不太明白你这句到底想问什么东东。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式