java imap fetch messages since a date

前端 未结 5 993
挽巷
挽巷 2020-12-16 02:52

I am writing/learning to fetch email using java from an IMAP folder using javax.mail package. I was successfully able to retrieve the last n messages in a Folder, however I

5条回答
  •  Happy的楠姐
    2020-12-16 03:20

    Here is what I came up with. This works for me, but probably not the best way to go about it. Any suggestions to improve this?

          Date from; //assume initialized
          Store store; //assume initialized
          Folder inbox = store.getFolder("INBOX");
          inbox.open(Folder.READ_ONLY);
          int end = inbox.getMessageCount();
          long lFrom = from.getTime();
          Date rDate;
          long lrDate;
          int start = end;
          do {
            start = start - 10;
            Message testMsg = inbox.getMessage(start);
            rDate = testMsg.getReceivedDate();
            lrDate = rDate.getTime();
          } while (lrDate > lFrom);
          Message msg[] = inbox.getMessages(start, end);
          for (int i=0, n=msg.length; i lFrom) {
              System.out.println(i + ": "
                + msg[i].getFrom()[0]
                + "\t" + msg[i].getSubject());
            }
          }
    

提交回复
热议问题