對POP3郵箱中的新郵件的判斷方法
http://lqixv.iteye.com/blog/563247
由於pop3協議不支援對已讀未讀郵件的標記,因此,要判斷一封pop郵箱中的郵件是否是新郵件必須與郵件客戶端聯合起來才能做到。其原理是,每個伺服器都會給每封郵件產生一個唯一的uid,客戶端把讀到的uid與本地儲存的uid比較,如果本地沒有這個uid,則這封郵件是新的,否則就是舊郵件。一般的郵件客戶端,如 outlook express、foxmail等,都是用這種方法實現的。大約步驟如下:
- 客戶端讀取郵箱裡所有郵件的 uid 列表(通過命令 UIDL 可以檢視);
- 把uid列表與本地儲存的uid列表相比較;
- 如果本地已存在,則比較下一個郵件uid;
- 如果本地不存在此uid,則下載此郵件,並儲存此郵件的uid在本地;
獲取uid的程式碼如下:
POP3Folder folder = (POP3Folder)store.getFolder("INBOX");
folder.open(Folder.READ_ONLY);
Message message[] = folder.getMessages();
for (int i = 0; i < message.length; i++) {
System.out.println(folder.getUID(message[i]));
}
相關文章
- 如何傳送電子郵件到別人郵箱?電子郵件傳送的方法
- win10郵件同步163郵箱的方法_win10郵件怎麼繫結163郵箱實現同步Win10
- 自制Pop3郵件接收系統(二):利用TcpClient得到Pop3的郵件列表資料 (轉)TCPclient
- golang傳送郵件(qq郵箱)Golang
- win10郵件怎麼用qq郵箱 win10郵件如何使用qq郵箱Win10
- 郵件協議之POP3的講解協議
- win10系統中自帶郵件如何設定接收網易郵箱郵件Win10
- ORACLE中使用SQL的正規表示式判斷郵箱格式OracleSQL
- PHP判斷電子郵件是否正確的簡單方法介紹PHP
- win10自帶郵件系統繫結企業郵箱的方法Win10
- 有哪些反垃圾郵件效果好的企業郵箱
- 谷歌郵箱,配置傳送郵件密碼谷歌密碼
- 垃圾郵件的一種應對方法
- 將Outlook中的郵件儲存到本地磁碟,釋放郵箱空間
- win10自帶郵件怎麼新增qq郵箱_win10郵箱如何匯入qq郵箱Win10
- 利用godaddy的cpanel郵箱伺服器的smtp發郵件Go伺服器
- .net 獲取郵箱郵件列表和內容
- linux mail利用外部郵箱地址發郵件LinuxAI
- PHP中的郵箱驗證PHP
- win10在哪裡刪除郵箱帳號_win10郵件中如何刪除郵箱賬戶Win10
- 電子郵箱是qq郵箱嗎 電子郵箱和qq郵箱的區別聯絡介紹
- 郵件開發:POP3協議詳解協議
- windows10系統中outlook郵箱已傳送郵件如何撤回Windows
- 編寫基於的POP3的電子郵件程式 (轉)
- 常用郵箱的伺服器(SMTP/POP3)地址和埠總結伺服器
- POP3協議(電子郵件郵局協議)中UIDL和TOP命令在實際使用中的作用協議UI
- 郵箱/郵件地址的正規表示式及分析(JavaScript,email,regex)JavaScriptAI
- JavaMail:java使用QQ郵箱傳送郵件簡單版。JavaAI
- win10系統下qq郵箱郵件中的圖片不顯示如何解決Win10
- 【js基礎】判斷是否是合法郵箱地址(正規表示式的應用)JS
- 更新Apple id郵箱以及常用海外郵箱使用/設定方法APP
- win10系統自帶郵箱發不出去郵件怎麼辦_win10郵箱發不出去郵件解決方案Win10
- Java實現網易企業163郵箱傳送郵件Java
- 配置linux使用mail傳送郵件到163郵箱LinuxAI
- Shell指令碼中傳送html郵件的方法指令碼HTML
- 郵件功能中的那些事
- 利用W3 JMAIL元件收POP3郵件 (轉)AI元件
- 郵件營銷容易成為垃圾郵件的原因及解決方法