`
2277259257
  • 浏览: 498494 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

电子邮件系统 3----JavaMail POP3接收邮件示例 .

 
阅读更多
  1. /** 
  2.  * CrazyItTest 
  3.  * 使用JavaMail 编写接收邮件示例 
  4.  */  
  5. package com.labci.javamail.test;  
  6. import java.io.BufferedReader;  
  7. import java.io.IOException;  
  8. import java.io.InputStreamReader;  
  9. import java.util.Properties;  
  10. import javax.mail.Folder;  
  11. import javax.mail.Message;  
  12. import javax.mail.MessagingException;  
  13. import javax.mail.Session;  
  14. import javax.mail.Store;  
  15. /** 
  16.  * @author Bill Tu(tujiyue/iwtxokhtd) 
  17.  * May 27, 2011[10:04:20 PM] 
  18.  * 
  19.  */  
  20. public class ReceiveEmailTest {  
  21.     private static final String  PROTOCOL = "pop3";  
  22.     private static final String  HOST = "pop3.163.com";  
  23.     private static final String USER = "iwtxokhtd";  
  24.     private static final String PASS="123456";  
  25.       
  26.     private static Session getMailSession(){  
  27.         Properties props=new Properties();  
  28.         props.put("mail.store.protocol", PROTOCOL);  
  29.         props.put("mail.pop3.host", HOST);  
  30.           
  31.         Session session=Session.getDefaultInstance(props);  
  32.         return session;  
  33.     }  
  34.       
  35.       
  36.     private static void receiveEmail() throws MessagingException, IOException{  
  37.         Store store=getMailSession().getStore();  
  38.         store.connect(HOST,USER,PASS);  
  39.           
  40.         Folder receiveFolder=store.getFolder("inbox");//对于POP3协议此参数值只能是inbox   
  41.         receiveFolder.open(Folder.READ_WRITE);//设置收件夹打开后的读写权限   
  42.           
  43.         int messageCount=receiveFolder.getMessageCount();  
  44.         System.out.println("总共拥有邮件数:"+messageCount);  
  45.           
  46.         if(messageCount>0){  
  47.             Message []messages=receiveFolder.getMessages();//得到所有的邮件   
  48.             for(int i=0;i<messages.length;i++){  
  49.                 Message msg=messages[i];  
  50.                 System.out.println("第"+(i+1)+"封邮件的主题为:"+msg.getSubject()  
  51.                         +" ,其发送人地址为:"+msg.getFrom()[0]);  
  52.                 System.out.println("您是否要阅读此邮件?若要请输入yes,否则就输入no:");  
  53.                 BufferedReader br=new BufferedReader(new InputStreamReader(System.in));  
  54.                 String input=br.readLine();  
  55.                 if(input!=null && !"".equals(input)  
  56.                         &&"yes".equals(input.trim())){  
  57.                     msg.writeTo(System.out);//直接输出到控制台,当然也输出到文件中。   
  58.                 }  
  59.             }  
  60.         }  
  61.         receiveFolder.close(true);//关闭邮件夹对象   
  62.         store.close();//断开连接   
  63.           
  64.           
  65.     }  
  66.       
  67.       
  68.       
  69.     /** 
  70.      * @param args 
  71.      * @throws IOException  
  72.      * @throws MessagingException  
  73.      */  
  74.     public static void main(String[] args) throws MessagingException, IOException {  
  75.         receiveEmail();  
  76.     }  
  77. }  

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics