我想按日期对电子邮件进行排序,以便获得包含所有对话以及我可以忽略的其他代码的最新电子邮件。
示例代码:
Session session = Session.getInstance(props, null);
Store store = session.getStore();
store.connect(HOST, USER, PASSWORD);
IMAPFolder inbox = (IMAPFolder) store.getFolder("INBOX");
inbox.open(Folder.READ_ONLY);
SortTerm[] sortTerms = new SortTerm[1];
sortTerms[0] = SortTerm.ARRIVAL;
Message[] messages = inbox.getMessages();
答案 0 :(得分:2)
我看到您发现了SortTerm,因此您已到达那里。使用IMAPFolder.getSortedMessages方法:
Message[] messages = ((IMAPFolder)inbox).getSortedMessages(sortTerms);
请注意,这取决于您的服务器支持SORT extension defined by RFC 5256。如果没有,则必须对客户端上的消息进行排序。