2011-07-12 214 views
0

我正在嘗試使用以下代碼獲取所有電子郵件,但此代碼讀取所有UNREAD郵件,但是我想要讀取所有已讀/未讀電子郵件。如何閱讀所有電子郵件?

try { 
     Properties props = (Properties)System.getProperties().clone(); 
     session = Session.getInstance(props);  
     store = session.getStore("pop3s"); 
     store.connect(host,username,password); 
     folder = store.getFolder("INBOX");  
     folder.open(Folder.READ_WRITE); 
     Message[] message = folder.getMessages();  

     for (int i=0, n=message.length; i<n; i++) 
     { 
      System.out.println(i + ": " + message[i].getFrom()[0] 
      + "\t" + message[i].getSubject()); 
     } 
}catch (MessagingException e) {e.printStackTrace();} 

任何人都可以請幫我閱讀所有的電子郵件。

感謝 Monali

+2

檢查你的pop3設置。所有電子郵件只會在pop3中啓用。 –

回答

1

POP3協議的標準行爲是,客戶通常刪除,他們已經從服務器收到的所有郵件。 Autodelete不是協議的一部分,它或多或少是POP3客戶端收到所有電子郵件後發送刪除命令的慣例或最佳做法。

據此,服務器沒有任何讀取消息。您可以閱讀的所有信息是未讀。即使你在服務器上留言,你也不能將標誌作爲讀取/未讀那裏。

這與IMAP協議不同,只要您通過電子郵件客戶端刪除郵件,郵件就會保留在服務器上。