在我的应用程序中,我试图使用java邮件API来读取我们收到退回电子邮件记录的一个邮箱,我相信我们可以使用
获取所有邮件// Get a Store object that implements the specified protocol.
store = session.getStore(protocol);
//Connect to the current host using the specified username and password.
store.connect(hostName, userName, password);
folder = store.getFolder(folderName);
Message[] messages = folder.getMessages();
然而,这将返回我提供的文件夹中的所有消息,有没有办法在我能够找到我在昨天收到的消息在给定的日期范围内。
在这方面的任何帮助都将受到高度赞赏。
由于
Vaibhav的
答案 0 :(得分:2)
请参阅Folder.search()方法以及javax.mail.search包中的许多搜索词。
请注意,IMAP搜索是在服务器上完成的,但只能解决天数,而不是时间。 通过将所有消息下载到客户端并在那里搜索来完成POP3搜索;可能不是你想做的事。
答案 1 :(得分:1)
根据我的期望,我做了以下工作:
cal.add(Calendar.DAY_OF_MONTH, -1);
// We would get the bounce mails received yesterday
ReceivedDateTerm term = new ReceivedDateTerm(ComparisonTerm.EQ,newDate(cal.getTimeInMillis()));
Message[] messages = folder.search(term)
干杯! Vaibhav的