用java实现的邮件系统五 (javamail收取邮件)
2010-08-31 22:22
351 查看
package com.wepull.pop3;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintStream;
import java.util.Properties;
import javax.mail.Folder;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Multipart;
import javax.mail.NoSuchProviderException;
import javax.mail.Part;
import javax.mail.Session;
import javax.mail.Store;
import javax.mail.internet.MimeUtility;
import com.wepull.smtp.*;
public class Viewmail {
public static void main(String[] args) {
Properties pros = System.getProperties();
// pros.put("", "");
// pros.put("", "");
Session mailsession = Session.getInstance(pros, null);
mailsession.setDebug(true);
Store store;
try {
store = mailsession.getStore("pop3");
store.connect("localhost", "lg", "123");// mailhost主机,user为用户名,passwd为密码
// store.connect("pop.126.com","liugangxnd","665687jkl");
Folder folder = store.getFolder("INBOX");
// folder.open(Folder.READ_WRITE);
folder.open(Folder.READ_ONLY);
Message[] message = folder.getMessages();
System.out.println(message.length + message[0].getSubject());
// System.out.println(message[0].);
try {
Object o = message[0].getContent();
System.out.println(message[0].getSentDate());
System.out.println(message[0].getDescription());
System.out.println(message[0].getDisposition());
// System.out.println(message);
if (message[0].isMimeType("text/plain")) {
System.out.println("************" + o.toString());
} else if (message[0].isMimeType("multipart/*")) {
Multipart mp = (Multipart) o;
System.out.println("_____" + mp.getContentType());
// System.out.println("*------*"+mp.getCount());
Part part = mp.getBodyPart(0);
System.out.println("附件的:" + part.getDescription());
System.out.println("附件的位置:" + part.getDisposition());
System.out.println("附件的名字:"
+ MimeUtility.decodeText(part.getFileName()));
System.out.println("附件的编码:");
String msg = (String) part.getContent();
BufferedReader br = new BufferedReader(
new InputStreamReader(part.getInputStream()));
// PrintStream ps = new PrintStream(new FileOutputStream(new
// File("a.txt")));
byte[] b = new byte[msg.length()];
part.getInputStream().read(b);
// System.out.println("附件内容:"+new String(Base64.decode(new
// String(b))));
System.out.println("附件的长度:" + msg.length());
// StringBuffer buf=new StringBuffer(msg.length()+6);
// char ch=' ';
// for(int i=0;i<msg.length();i++)//若遇到换行就转为<br>
// { ch=msg.charAt(i);
// buf.append(ch);
// // if(ch=='/n')buf.append("<br>");
// // else buf.append(ch);
// }
//
// System.out.println("++++++++++"+buf.toString());
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
folder.close(true);
store.close();
} catch (NoSuchProviderException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}// protocol为连接协议,IMAP或是POP
catch (MessagingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
import java.io.BufferedReader;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintStream;
import java.util.Properties;
import javax.mail.Folder;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Multipart;
import javax.mail.NoSuchProviderException;
import javax.mail.Part;
import javax.mail.Session;
import javax.mail.Store;
import javax.mail.internet.MimeUtility;
import com.wepull.smtp.*;
public class Viewmail {
public static void main(String[] args) {
Properties pros = System.getProperties();
// pros.put("", "");
// pros.put("", "");
Session mailsession = Session.getInstance(pros, null);
mailsession.setDebug(true);
Store store;
try {
store = mailsession.getStore("pop3");
store.connect("localhost", "lg", "123");// mailhost主机,user为用户名,passwd为密码
// store.connect("pop.126.com","liugangxnd","665687jkl");
Folder folder = store.getFolder("INBOX");
// folder.open(Folder.READ_WRITE);
folder.open(Folder.READ_ONLY);
Message[] message = folder.getMessages();
System.out.println(message.length + message[0].getSubject());
// System.out.println(message[0].);
try {
Object o = message[0].getContent();
System.out.println(message[0].getSentDate());
System.out.println(message[0].getDescription());
System.out.println(message[0].getDisposition());
// System.out.println(message);
if (message[0].isMimeType("text/plain")) {
System.out.println("************" + o.toString());
} else if (message[0].isMimeType("multipart/*")) {
Multipart mp = (Multipart) o;
System.out.println("_____" + mp.getContentType());
// System.out.println("*------*"+mp.getCount());
Part part = mp.getBodyPart(0);
System.out.println("附件的:" + part.getDescription());
System.out.println("附件的位置:" + part.getDisposition());
System.out.println("附件的名字:"
+ MimeUtility.decodeText(part.getFileName()));
System.out.println("附件的编码:");
String msg = (String) part.getContent();
BufferedReader br = new BufferedReader(
new InputStreamReader(part.getInputStream()));
// PrintStream ps = new PrintStream(new FileOutputStream(new
// File("a.txt")));
byte[] b = new byte[msg.length()];
part.getInputStream().read(b);
// System.out.println("附件内容:"+new String(Base64.decode(new
// String(b))));
System.out.println("附件的长度:" + msg.length());
// StringBuffer buf=new StringBuffer(msg.length()+6);
// char ch=' ';
// for(int i=0;i<msg.length();i++)//若遇到换行就转为<br>
// { ch=msg.charAt(i);
// buf.append(ch);
// // if(ch=='/n')buf.append("<br>");
// // else buf.append(ch);
// }
//
// System.out.println("++++++++++"+buf.toString());
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
folder.close(true);
store.close();
} catch (NoSuchProviderException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}// protocol为连接协议,IMAP或是POP
catch (MessagingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
相关文章推荐
- 用java实现的邮件系统七(javamail收取复杂邮件-带附件和html)
- 用java实现的邮件系统三(收取邮件服务器)
- 用java实现的邮件系统四 (javamail发送邮件)
- 用java实现的邮件系统六(javamail发送复杂邮件-带附件和html)
- Java基于JavaMail实现向QQ邮箱发送邮件
- 用java实现的邮件系统二 (转发)
- 【javaweb】javamail实现邮件激活
- 基于james3.0 的邮件系统(struts2.3.2 +spring3.0.1+jpa(hibernate3.6.5)实现)b/s模式--java邮件系统
- java中javamail发送带附件的邮件实现方法
- java利用JavaMail实现邮件功能
- 基于JavaMail的Java实现复杂邮件发送功能
- JavaMail实现发送邮件,可添加附件(JAVA SWING)
- 基于JavaMail的Java实现简单邮件发送功能
- 基于james3.0 的邮件系统(struts2.3.2 +spring3.0.1+jpa(hibernate3.6.5)实现)b/s模式--java邮件系统
- [转载]javaMail Java实现邮件发送
- 基于james3.0 的邮件系统(struts2.3.2 +spring3.0.1+jpa(hibernate3.6.5)实现)b/s模式--java邮件系统
- 用Java类实现JavaMail发送邮件的例子
- Java基于JavaMail实现向QQ邮箱发送邮件
- 使用 JavaMail 实现邮件发送与收取
- 在Domino中使用Java系列实例1--在Lotus Domino中使用JavaMail实现高效外发邮件