2013-10-07 102 views

回答

2

使用Folder#search(SearchTerm)。实施一个覆盖SearchTerm#match(Message)方法的具体子类SearchTerm。如果Message的日期与您感兴趣的日期匹配,则返回true。

+0

此搜索是由服务器或应用程序? – user2365209

+0

@ user2365209代码放在您的应用程序中。 JavaMail将调用您的代码来确定哪些消息匹配。然后,您可以使用该信息来获取适合您参数的消息。 –

+0

这种方法将导致所有的搜索都在客户端完成。 –

1

使用两个ReceivedDateTerms和AndTerm搜索日期介于两个值之间的消息。一旦你有消息对象,你可以下载或访问你需要的任何东西。

+0

但是这是什么? http://stackoverflow.com/a/7014977/2365209 – user2365209

+0

IMAP协议只支持日期而不是时间。如果您需要基于时间进行搜索,则可以使用Folder.search将列表缩小到几天,然后使用Message.match在指定的时间内查找消息。后者将通过下载每条消息所需的信息在客户端完成。 –

相关问题