我试图在某个时间戳之后获取消息,我的编码方式是由本网站的另一位程序员建议的:
GregorianCalendar date = new GregorianCalendar();
SearchTerm newer = new ReceivedDateTerm(ComparisonTerm.GT,date.getTime());
Message msgs[] = folder.search(newerThen);
问题是我收到了自该日期以来的所有消息,而不是具体时间。我想知道是否有一些解决方法可以模拟这一点。我的意思是,例如,如果我想获取今天中午以来的所有消息,我会专门获取这些消息,而不是今天早上收到的消息。
提前致谢,
EDIT:
与此相关的一个新想法:也许一些日期操作可以完成这项工作。我的意思是,比较时间戳中的分钟并以编程方式过滤那些不符合条件的消息。我知道这不是最好的方法,但它可行。
PS:我正在使用 IMAP 并尝试从 gmail 获取邮件,但我想无论邮件服务器是什么,它都应该可以工作。
很不幸的是,不行。在本例中,JavaMail 类正在使用 IMAP 协议,并且 IMAP 的SEARCH
命令仅需要日期,不需要时间 https://www.rfc-editor.org/rfc/rfc3501#section-6.4.4(参见SINCE
and SENTSINCE
标准)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)