我有一个用于使用 imap 存档电子邮件的应用程序。此应用程序中还有许多需要存档的 imap 帐户。
此时,应用程序会不时连接到 imap 帐户并仅下载新电子邮件。我的问题是,每次连接到 imap 帐户时,它都会验证所有文件夹中的所有电子邮件,并仅下载尚未下载的电子邮件(我存储所有电子邮件的消息 ID,并仅下载消息 ID 为不存储)。
所以我想知道是否有替代方案,因为验证所有电子邮件需要一些时间(对于 10-20K,需要 2-5 分钟)。
我使用 JavaMail API 连接到 imap 帐户。
The javadoc http://java.sun.com/products/javamail/javadocs/com/sun/mail/imap/IMAPFolder.html helps:
IMAPFolder 提供了以下方法:
getMessagesByUID(长开始,长结束)和
getUID(消息消息)
使用 getUID(),您可以获得已下载的最后一条消息的 UID。使用 getMessagesByUID,您可以将下载的最后一条消息定义为起始范围,并使用 getUIDNext() 方法查找作为范围末尾的最后一条消息。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)