java mail 使用pop3的协议怎么判断新邮件
目前使用了flag来判断可是取出来的值都为0,没有一封为新邮件。
public boolean isNew() throws MessagingException {
boolean isnew = false;
Flags flags = ((Message) mimeMessage).getFlags();
Flags.Flag[] flag = flags.getSystemFlags();
System.out.println("flags's length: " + flag.length);
for (int i = 0; i < flag.length; i++) {
if (flag[i] == Flags.Flag.SEEN) {
isnew = true;
System.out.println("seen Message.......");
break;
}
}
return isnew;
}
在网上找了一下相前的资料说是pop3并不支持这种方法,只能是吧邮件的uid取出来,然后进行比较如果UID存在说明是读过的邮件,不存在说明是新邮件。除了这种思路还有没有更好的解决方法。最好是能给我代码,谢谢先。
------解决方案--------------------
判断新邮件必须同已经收取的邮件相比较。
------解决方案--------------------
吧邮件的获取邮件时判断UID是否存在于文件中,存在说明不是新邮件,如不存在说明是新邮件。基本思路就是这样