资源简介
附带apache-james-2.3.2.zip和JMail示例代码很经典入门必备

代码片段和文件信息
package test;
import java.io.*;
import java.util.*;
import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.*;
public class ReceiveEmail {
//设置附件保存路径
private static String filePath = “E:\\MailTemp“;
/**
* @param args
*/
public static void main(String[] args) {
// 设置收件服务器
String popServer = “localhost“;
// 定义消息文件夹对象
Folder folder = null;
// 定义消息存储器对象
Store store = null;
try {
// 创建属性对象
Properties props = new Properties();
// 创建邮件会话
Session mailSession = Session.getDefaultInstance(props);
// 获取邮件存储器对象
store = mailSession.getStore(“pop3“);
// 连接POP3收件服务器
store.connect(popServer “liguifang“ “111111“);
// 获取消息(邮件)文件夹
folder = store.getFolder(“INBOX“);
// 打开文件夹
folder.open(Folder.READ_ONLY);
// 获取该帐号的所有邮件
Message[] messages = folder.getMessages();
// 循环读取邮件
for (int i = 0; i < messages.length; i++) {
System.out.println(“===============================“);
// 显示邮件标题
System.out.println(“标题:“ + messages[i].getSubject());
// 显示发送时间
System.out.println(“发送时间:“
+ messages[i].getSentDate().toString());
// 显示发件人
System.out
.println(“发件人:“ + messages[i].getFrom()[0].toString());
// 判断邮件类型
if (messages[i].isMimeType(“text/*“)) {// 基本邮件
System.out.println(“内容:“ + messages[i].getContent());
} else {// 带附件的邮件
// 获取Multipart
Multipart multipart = (Multipart) messages[i].getContent();
// 循环提取子内容
for (int j = 0; j < multipart.getCount(); j++) {
// 获取子内容
BodyPart bp = multipart.getBodyPart(j);
// 判断子内容是否有附件
String disInfo = bp.getDisposition();
if (disInfo != null && disInfo.equals(bp.ATTACHMENT)) {// 有附件
// 保存附件
System.out.println(“内容:是附件“);
saveAttach(bp);
} else {// 没有附件
System.out.println(“内容:“ + bp.getContent());
}
}
}
}
} catch (Exception e) {
e.printStackTrace();
} finally {
// 关闭Folder、Store
closeReceiveEmail(folder store);
}
}
/**
* 功能:保存附件
*
* @param part
* @throws Exception
*/
private static void saveAttach(BodyPart part) throws Exception {
String temp = part.getFileName();// 得到未经处理的附件名字
System.out.println(“附件文件名:“ + temp);
// String s = temp.substring(11 temp.indexOf(“?=“) - 1);//
// 去到header和footer
// 文件名一般都经过了base64编码下面是解码
String fileName = MimeUtility.decodeWord(temp);
System.out.println(“有附件:“ + fileName);
InputStream in = part.getInputStream();
FileOutputStream writer = new FileOutputStream(new File(filePath + “\\“
+ fileName));
byte[] content = new byte[255];
int read = 0;
while ((read = in.read(content)) != -1) {
writer.write(content);
}
writer.close();
in.close();
}
/**
* 功能:关闭对文件夹和存储的连接
*
* @param folder
* @param store
*/
private static void closeReceiveEmail(Folder folder Store st
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3696 2009-12-12 10:26 JMail\59 JMail示例代码\59 JMail示例代码\ReceiveEmail.java
文件 2461 2009-12-12 10:25 JMail\59 JMail示例代码\59 JMail示例代码\SendAttachmentEMail.java
文件 1774 2009-12-12 09:41 JMail\59 JMail示例代码\59 JMail示例代码\SendMail.java
文件 7694883 2009-11-16 02:16 JMail\apache-james-2.3.2.zip
..A..H. 162 2008-12-09 10:53 JMail\~$S 作业(JMail).doc
目录 0 2010-01-25 14:12 JMail\59 JMail示例代码\59 JMail示例代码
目录 0 2010-01-25 14:12 JMail\59 JMail示例代码
目录 0 2010-01-31 17:23 JMail
----------- --------- ---------- ----- ----
7702976 8
- 上一篇:IEEE802.3bj
- 下一篇:仿掌阅iReader书架
相关资源
- E4A无障碍跨程序操作类库(带源码、
- 升腾Win终端系统升级方法新版.doc
- Uninstall_Cortana_WINCLIENT.CN.rar
- STM32基于rt_thread操作系统的SDHC卡文件
- msp430F149操作红外接收模块源码
- 操作系统 LRU算法 实验报告 及 程序代
- [免费]车载CE6.0操作系统
- 分页系统模拟实验 操作系统 课程设
- 二叉树基本操作源代码
- 模拟段页式虚拟存储管理中地址转换
- 操作系统实验——虚存管理实验
- 广工操作系统实验
- php 操作INI文件,读取,设置,ini文件
- 广东工业大学操作系统实验四文件系
- Bochs入门教程[操作系统第一步]
- 软件工程文档模板1可行性研究报告
- 三维地形的仿真显示实现了对地图的
- 用矩阵类算法程序和最小二乘法
- 操作系统课程设计完整版
- 一个基于MFC的GridCtrl,提供类似Excel的
- 磁盘调度算法的模拟实现及对比
- 模拟一个文件管理系统
- JS操作本地网页串口源码
- 二级文件系统(操作系统)
- uCOS编译环境建立 BC45 TASM
- usb调试程序 对USB设备进行数据的读写
- Linux 操作系统实验(全)
- 操作系统实验综合设计【附代码】
- 操作系统共享内存实验
- 操作系统循环首次适应算法
评论
共有 条评论