微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javamail和gmail

如何解决javamail和gmail

| 以下代码引发indexoutofboundsexception。知道为什么吗?
 Folder folder = store.getDefaultFolder();
 folder = folder.getFolder(\"INBox\");

 int totalMessages = folder.getMessageCount();
 //totalMessages is 17000

  folder.getMessages(16900,16999)   --- here I am trying to get the NEWEST 99                                                                                         messages.
即使有太多邮件,此代码也会引发异常indexoutofbounds。我究竟做错了什么? folder.getMessages()-获取从第一封电子邮件到最后一封电子邮件的所有电子邮件。以我为例17000!如何获得从最新到最旧的电子邮件? 我只想查看最新的电子邮件-其中大约100封。这可能吗?     

解决方法

        永远不要在代码中使用魔术值,这只会使您痛苦。尝试:
int messagesToDisplay = 100;
folder.getMessages(totalMessages  - messagesToDisplay,totalMessages);
从JavaDoc中,将使用基于1的数组而不是0来标识消息。 您还可以添加堆栈跟踪信息吗?     ,        请首先以读取或读写模式打开文件夹。
folder.open(Folder.READ_WRITE);
    

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。