java 读取 邮件 附件_请问javamail是怎么实现附件的发送和接受的?

能给出具体调用接口或则给一个小例子最好!

|

这两篇文章看看,我以前写javamail的时候也是参考这两篇的,基本上可以满足你的要求

http://softwaredev.earthweb.com/java/sdjjavase/article/0,,12395_618471,00.html

http://softwaredev.earthweb.com/java/sdjjavase/article/0,,12395_618481,00.html

具体例子,不好意思啦,写的有一段时间了,也只是试试而已,现在也不知道搞哪里去了,准备过几周再写。

|

好像不是哦,我记得是用javax.mail.FetchProfile

我找了曾经写maillist的一段代码:

需要先打开folder,然后..

// 获得所有新邮件的属性和标记

Message[] messages = folder.getMessages();

FetchProfile fp = new FetchProfile();

fp.add(FetchProfile.Item.ENVELOPE);

fp.add(FetchProfile.Item.FLAGS);

fp.add("X-Mailer");

folder.fetch(messages, fp);

Message newMessage = new MimeMessage(session); //带附件的message

newMessage.setContent((Multipart)message.getContent());

我这里是把收到的信件message直接发出去了

|

创建一个MimeBodyPart对象并通过file读取多个文件给它,然后绑定到为MimeMessage创建的MimeMultipart实例,随后把MimeMultipart绑定给MimeMessage,随后发送出去。

MimeMessage.setContent(MimeMultipart)

MimeMultipart.addBodyPart(MimeBodyPart)

读取message的时候要注意,我见过有朋友很随意的就把它当作带附件的信件处理。

可以用instance of来判断一下每封信是否有附件,或者通过带附件标记来判断:

Object content = message.getContent();

if (content instanceof Multipart)

//message带附件

else

//message不带附件

很抱歉我家里机器上没有那几个jar,所以没法具体测试一下,只能根据以前的代码和记忆这么写。

|

mark

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值