Java 阅读收件箱中的所有邮件
它只从收件箱中读取新邮件,而我想读取所有邮件。 如何实现Java 阅读收件箱中的所有邮件,java,inbox,Java,Inbox,它只从收件箱中读取新邮件,而我想读取所有邮件。 如何实现 Folder folderInbox = store.getFolder("INBOX"); folderInbox.open(Folder.READ_ONLY) Message[] arrayMessages = folderInbox.getMessages(); 请您尝试一下方法Message[]messages=inbox.getMessages(startMessage,endMessage)而不是Message[]array
Folder folderInbox = store.getFolder("INBOX");
folderInbox.open(Folder.READ_ONLY)
Message[] arrayMessages = folderInbox.getMessages();
请您尝试一下方法
Message[]messages=inbox.getMessages(startMessage,endMessage)
而不是Message[]arrayMessages=folderInbox.getMessages()代码>
这里startMessage和endMessage是整数值。这是一个很好的例子-
文件夹收件箱=store.getFolder(“收件箱”);
收件箱。打开(文件夹。读写);//Folder.READ_ONLY
int messageCount=inbox.getMessageCount();
System.out.println(“总消息”+消息计数);
int startMessage=messageCount-5;
int endMessage=messageCount;
if(messageCount<5){
startMessage=0;
}
Message[]messages=inbox.getMessages(开始消息,结束消息);
我尝试了上述方法。。但我仍然将messageCount设置为0。messageCount始终提供收件箱中的邮件总数。您的SMTP是否已全部设置,并在阅读后保留电子邮件。仅供参考,许多SMTP确实会在从服务器收件箱发送邮件后删除电子邮件。检查的一种方法是连接到gmail收件箱,看看你的程序是如何运行的。这是代码。。。。你也可以试试。。。因为我的邮件不会被SMTP从收件箱中删除。我已经做到了。虽然每次我下载的时候,本地文件夹中的文件都会被替换。太好了,也请发布你的答案。谢谢
Folder inbox = store.getFolder("inbox");
inbox.open(Folder.READ_WRITE); // Folder.READ_ONLY
int messageCount = inbox.getMessageCount();
System.out.println("Total Messages" + messageCount);
int startMessage = messageCount - 5;
int endMessage = messageCount;
if (messageCount < 5) {
startMessage = 0;
}
Message[] messages = inbox.getMessages(startMessage, endMessage);