当前位置:编程学习 > JAVA >>

java mail 收取邮件 按照时间倒序接收

我可以通过folder.getMessages(start,end)实现邮件的分页收取,但现在遇到一个问题,就是时间的倒序问题。我想按照时间的倒序收取,并可以分页。我尝试通过folder.search(searchItem)的方法去实现时间的倒序,但又不能分页。

有用过javamail的朋友帮帮忙,如何既可以实现分页,又可以时间倒序收取呢?谢谢。 邮件 javamail 分页 时间倒序 --------------------编程问答-------------------- folder.getMessages返回数组, Message中可以去得发送时间  getSentDate(), 你将数组按照时间重新排序下就可以了。

--------------------编程问答-------------------- https://javamail.java.net/nonav/docs/api/ --------------------编程问答--------------------
引用 1 楼 rui888 的回复:
folder.getMessages返回数组, Message中可以去得发送时间  getSentDate(), 你将数组按照时间重新排序下就可以了。

用inbox.getMessages(arg0, arg1)方法可以得到从开始到结束为止的一部分邮件。 
但是这个方法是对于整个收件箱的。 
如果我要做邮件的排序,或搜索。想要对排序或搜索的结果做分页,有没有类似上面的方法。 
我不想把整个查询结果的messages[]一次取出来,我只想取向要的那一段。 
有办法吗?谢谢O(∩_∩)O --------------------编程问答--------------------
引用 3 楼 fmcwc 的回复:
Quote: 引用 1 楼 rui888 的回复:

folder.getMessages返回数组, Message中可以去得发送时间  getSentDate(), 你将数组按照时间重新排序下就可以了。

用inbox.getMessages(arg0, arg1)方法可以得到从开始到结束为止的一部分邮件。 
但是这个方法是对于整个收件箱的。 
如果我要做邮件的排序,或搜索。想要对排序或搜索的结果做分页,有没有类似上面的方法。 
我不想把整个查询结果的messages[]一次取出来,我只想取向要的那一段。 
有办法吗?谢谢O(∩_∩)O


应该是收到之后都存数据库里,查看的时候再从数据库里取吧
是这样的话分页也好做啊,用sql或取全部再用程序根据情况取部分 --------------------编程问答-------------------- 存数据库?只能这样吗?这样也会造成同步的风险,而且邮件太多的时候,就很麻烦了。 --------------------编程问答-------------------- 唉 这个问题还是没有解决。
ImapFolder 貌似有一个sortterm的方法说是可以直接排序的,但找不到例子。大神有用过sortterm这个例子的吗?
Javammail出来了那么久,大伙都没有遇到排序的问题?都是在客户端排序吗?这样不是很慢吗?
补充:Java ,  Java相关
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,