咋取邮件信息?
来源:互联网 发布:淘宝千禧银楼是真的吗 编辑:程序博客网 时间:2024/06/10 23:03
package test;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Properties;
import javax.mail.Folder;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Store;
import javax.mail.URLName;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import com.sun.mail.pop3.POP3Folder;
/**
* 有一封邮件就需要建立一个ReciveMail对象
*/
public class ReciveOneMail {
private MimeMessage mimeMessage = null;
private String dateformat = "yyyy-MM-dd HH:mm"; // 默认的日前显示格式
public ReciveOneMail(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;
}
/**
* 获得邮件主题
*/
public String getSubject() throws MessagingException {
String subject = "";
try {
subject = mimeMessage.getSubject();
String header = ((MimeMessage) mimeMessage).getHeader("SUBJECT")[0];
if ((header.toLowerCase().indexOf("=?")) > 0) {
subject = new String((subject.getBytes("ISO-8859-1")), "gb2312");
}
if (subject == null)
subject = "";
} catch (Exception exce) {
}
return subject;
}
/**
* 获得邮件发送日期
*/
public String getSentDate() throws Exception {
Date sentdate = mimeMessage.getSentDate();
SimpleDateFormat format = new SimpleDateFormat(dateformat);
return format.format(sentdate);
}
/**
* 获得此邮件的Message-ID
*/
public String getMessageId() throws MessagingException {
return mimeMessage.getMessageID();
}
/**
* 【设置日期显示格式】
*/
public void setDateFormat(String format) throws Exception {
this.dateformat = format;
}
/**
* PraseMimeMessage类测试
*/
public static void main(String args[]) throws Exception {
Properties props = System.getProperties();
props.put("mail.smtp.host", "mail.socix.com");
props.put("mail.smtp.auth", "true");
URLName url = new URLName("pop3", "mail.socix.com", 110, null,
"xcf@socix.com", "111111");
System.out.println("log on!");
Session session = Session.getInstance(System.getProperties(), null);
Store store = session.getStore(url);
POP3Folder inbox = null;
try {
store.connect();
System.out.println("store connected!");
inbox = (POP3Folder) store.getFolder("INBOX");
inbox.open(Folder.READ_ONLY);
Message[] message = inbox.getMessages();
for (int i = 0; i < message.length; i++) {
System.out.println("Message " + i + " UID: "
+ inbox.getUID(message[i]));
}
System.out.println("fetched!");
for (int i = 0; i < message.length; i++) {
ReciveOneMail pmm = new ReciveOneMail((MimeMessage) message[i]);
System.out.println("第" + (i + 1) + "封");
System.out.println("======================");
System.out.println("Message " + (i + 1) + " 主题: "
+ pmm.getSubject()); // 获取主题
System.out.println("Message " + (i + 1) + " 日期: "
+ pmm.getSentDate()); // 获取邮件发送日期
System.out.println("Message " + (i + 1) + " 发件人: "
+ pmm.getFrom()); // 获取发件人和地址
System.out.println("Message " + (i + 1) + " UID: "
+ inbox.getUID(message[i]));
}
} finally {
try {
inbox.close(false);
} catch (Exception e) {
}
try {
store.close();
} catch (Exception e) {
}
}
}
}
- 咋取邮件信息?
- python+beautifulsoup+smtp爬取学院网站的信息公告+邮件发送
- 邮件头信息
- 读懂邮件头信息
- 查看邮件信息列表
- android 发送邮件,信息
- 接收邮件信息
- C#取计算机硬件信息
- ASP取注册表信息
- C#取计算机硬件信息
- 取USB设备信息
- C#取计算机硬件信息
- C#取计算机硬件信息
- 取CPU信息
- 取USB设备信息
- 取简单PE信息
- WMI取不到信息
- JSP取header信息
- find命令初探
- 如何把flash.exe转换成家用DVD可以播放的MPG格式
- OOP
- 咋把"06May09"搞到"yyyy-MM-dd"
- 咋下载网上的文件??
- 咋取邮件信息?
- 咋取baidu首页的内容?或其他链接的html
- swing的个日期控件,不懂,抄了再说
- 一个进制转换的swing,改了下
- 某大学生的作业(1)--题目
- 某大学生的作业(2)--第一次回复
- 某大学生的作业(3)--第一次回复之要求修改
- find命令实例
- 122