关于java开发邮件接收程序的一点总结

 用java开发邮件接收程序需要用到javamail包,资源地址:http://java.sun.com/products/javamail/,最新版是 JavaMail 1.4.3 ,下载地址是:http://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/VerifyItem-Start/javamail-1.4.3.zip?BundledLineItemUUID=gqFIBe.oRjUAAAEl1r4xay_N&OrderID=t1BIBe.o3q4AAAElxL4xay_N&ProductID=J3tIBe.pJGsAAAElR5Jh6wjK&FileName=/javamail-1.4.3.zip。

里面有两个关键的jar包,分别是mail.jar和activation.jar,一定要放在java目录/jre/lib/ext目录里面,否则会在编译时报错,错误信息如下:

ReceiveMail.java:10: package javax.mail does not exist
import javax.mail.*;
^
ReceiveMail.java:11: package javax.mail.internet does not exist
import javax.mail.internet.*;

 

下面贴出来一个例子代码,供参考(当然你也可以网上查到)

 

// java 收邮件程序
import java.io.*;   
import java.text.*;   
import java.util.*;   
import javax.mail.*;   
import javax.mail.internet.*;   
  
/**  
* 有一封邮件就需要建立一个ReciveMail对象  
*/  
public class ReceiveMailDemo {   
    private MimeMessage mimeMessage = null;   
    private String saveAttachPath = ""; //附件下载后的存放目录   
    private StringBuffer bodytext = new StringBuffer();//存放邮件内容   
    private String dateformat = "yy-MM-dd HH:mm"; //默认的日前显示格式   
  
    public ReceiveMailDemo(MimeMessage mimeMessage) {   
        this.mimeMessage = mimeMessage;   
    }   
  
    public void setMimeMessage(MimeMessage mimeMessage) {   
        this.mimeMessage = mimeMessage;   
    }   
  
    /**  
     * 获得发件人的地址和姓名  
     */  
    public String getFrom() throws Exception {   
        InternetAddress address[] = (InternetAddress[]) mimeMessage.getFrom();   
        String from = address[0].getAddress();   
        if (from == null)   
            from = "";   
        String personal = address[0].getPersonal();   
        if (personal == null)   
            personal = "";   
        String fromaddr = personal + "<" + from + ">";   
        return fromaddr;   
    }   
  
    /**  
     * 获得邮件的收件人,抄送,和密送的地址和姓名,根据所传递的参数的不同 "to"----收件人 "cc"---抄送人地址 "bcc"---密送人地址  
     */  
    public String getMailAddress(String type) throws Exception {   
        String mailaddr = "";   
        String addtype = type.toUpperCase();   
        InternetAddress[] address = null;   
        if (addtype.equals("TO") || addtype.equals("CC")|| addtype.equals("BCC")) {   
            if (addtype.equals("TO")) {   
                address = (InternetAddress[]) mimeMessage.getRecipients(Message.RecipientType.TO);   
            } else if (addtype.equals("CC")) {   
                address = (InternetAddress[]) mimeMessage.getRecipients(Message.RecipientType.CC);   
            } else {   
                address = (InternetAddress[]) mimeMessage.getRecipients(Message.RecipientType.BCC);   
            }   
            if (address != null) {   
                for (int i = 0; i < address.length; i++) {   
                    String email = address[i].getAddress();

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值