java实现收取Pop3邮件

以前玩Net的时候自己花了差不多一个暑假的时间来实现一个收取Pop3邮件的组件
,所以记忆尤为深刻~呵呵
今天无意看见Apache下的一个子项目Commons,其用途是专门做一些常用的开发组件包
比如DBPool什么的
详细信息可以看这里
http://jakarta.apache.org/commons/index.html

其中有个Net包,里面包含来支持多达如下几种协议的组件:
Supported protocols are:

  • FTP
  • NNTP
  • SMTP
  • POP3
  • Telnet
  • TFTP
  • Finger
  • Whois
  • rexec/rcmd/rlogin
  • Time (rdate) and Daytime
  • Echo
  • Discard
  • NTP/SNTP

呵呵!真强~~
其中就包含Pop3邮件收取协议
于是开工哦!~

首先先下一个这个包回来附加到Eclipse项目中
下包可以在这里
http://mirror.vmmatrix.net/apache/jakarta/commons/net/binaries/commons-net-1.4.1.zip

然后新建一个Demo.java类,敲下如下代码:就可以收信了~简单,当然你还要按照你的地区再编一次码,否则中文显示为

package Test;

import java.io.Reader;
import java.io.BufferedReader;

import org.apache.commons.net.pop3.POP3Client;
import org.apache.commons.net.pop3.POP3MessageInfo;

public class Demo {

    public static void main(String[] args) {
        POP3Client pop3 = new POP3Client();
        try {
            pop3.setDefaultPort(110);

            pop3.connect("pop.qq.com");
            // 我测试的是QQ邮件~
            // 输入你的QQ号作为油箱名称 QQ密码作为邮箱密码
            if (pop3.login("油箱名称", "邮箱密码")) {

                POP3MessageInfo[] p3m = pop3.listMessages();

                System.out.println("您一共有" + p3m.length + "封信件");
                for (POP3MessageInfo obj : p3m) {
                    int id = obj.number;// 获得信件在服务器端的唯一编码

                    Reader red = pop3.retrieveMessage(id);
                    BufferedReader br = new BufferedReader(red);
                    while (br.readLine() != null) {
                        System.out.println(br.readLine());
                    }
                }
            }

            pop3.logout();
            pop3.disconnect();
        } catch (Exception e) {
            // TODO Auto-generated catch block
            System.out.println("失败");
            e.printStackTrace();
        }

    }
}

时间: 2024-10-02 08:40:56

java实现收取Pop3邮件的相关文章

收取pop3邮件的控件

问题描述 请问有谁看过董大伟写的<ASP.NET与AJAX深度剖析范例集>,在WebMail中所提到的收取pop3邮件的控件在哪可以下载到?

Foxmail/outlook 用POP3收取domino邮件问题

问题描述 Foxmail/outlook用POP3收取domino邮件,设置了"在服务器上保留备份,*天后删除".此设置无效,服务器上的邮件不会自动删除.请问我需要做什么设置?谢谢! 解决方案 解决方案二:1,有权限删除服务器上的文件的权限,如果那就把你的代码权限提升一下.应该代码权限不够2,找找日志看看什么提示.3,还是查权限解决方案三:我也有此问题,同求,不解.解决方案四:我也有此问题,同求

POP3收取notes邮件(6.5)问题

问题描述 请教各位大侠,先谢谢,我用FOXMAIL及其他POP3收取notes邮件(6.5)时,验证能通过,但就是没有收到一封邮件下来.邮箱中有很多未读邮件,不知是什么原因,请指点.谢谢.

运用C#实现POP3邮件接收程序

程序 微软的VS.Net开发工具推出已有一段时日了,其中的那门新语言C#也日渐为大家所熟悉并接受.C#作为一门新兴的语言相信具有传统语言不可比拟的优越性,特别是在网络应用方面,开发者更是感觉到了C#的强大功能.所以本文就通过运用C#来实现一个基于POP3协议的邮件接收程序来向大家展示C#网络编程的功能强大,同时也向大家介绍一下基于POP3协议的电子邮件接收原理. 首先我向大家介绍邮件接收的基本原理: 一开始便是客户端与服务器的连接.不过,在客户端连接到服务器之前,注意把端口设为POP3协议默认的

问题:Foxmail接收domino邮件时,Foxmail每次都会历遍历史所有邮件再收取新邮件

问题描述 问题:Foxmail接收domino邮件时,Foxmail每次都会历遍历史所有邮件再收取新邮件,邮件数越多等候越久,难以使用,请教大家如何处理

asp.net中用tcpclient收发pop3邮件。

问题描述 asp.net中用TcpClient收pop3邮件,直接用adsl上网可以接收到.但是我用代理服务器上网,则收不到,那么在程序中如何设置代理服务器?程序中不设代理,相当于http直连,无法成功.TcpClientsender=newTcpClient("pop.sina.com",110);请教达人.

基于Lumisoft.NET组件的POP3邮件接收和删除操作

Lumisoft.NET组件是一个非常强大的邮件发送.邮件接收等功能的开源组件,一般用它来处理邮件的相关操作,是非常合适的.之前也写过一些该组件的随笔文章,不过主要是利用来发送邮件居多,最近由于项目需要,需要利用该组件来接收邮件,邮件通过POP3协议进行接收到本地,故对该组件进行了全面的了解和使用.本文主要是在此背景上,介绍该组件的POP3协议处理类的使用.Lumisoft.NET组件2013年作者有做了一定的更新,修复了一些问题,本文是基于该组件的最新版本进行开发使用. 1.POP3登录及头部

用PHP实现POP3邮件的收取(三)

应用实例(作者:陈俊清 2000年10月18日 11:58) POP3收取邮件的类在前面的文章中已经给大家做了详细的介绍,下面我们来看看如何应用这个类: <? include("pop3.inc.php"); $host="pop.china.com"; $user="boss_ch"; $pass="026007"; $rec=new pop3($host,110,2); if (!$rec->open()) d

用 PHP 实现 POP3 邮件的收取(3)

应用实例 POP3收取邮件的类在前面的文章中已经给大家做了详细的介绍,下面我们来看看如何应用这个类: include("pop3.inc.php"); $host="pop.china.com"; $user="boss_ch"; $pass="026007"; $rec=new pop3($host,110,2); if (!$rec->open()) die($rec->err_str); echo "