java读取未读邮件!
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;
break;
}
}
return isnew;
}
很奇怪的是为什么flag.length得到的是0,也就是说是null.
因为是0 所以 for (int i = 0; i < flag.length; i++) 这个循环根本就不走!
如果我设置flag[0]这样,会报错误!数组越界,因为根本就没有一个元素!
我测试主程序,能发现我有96封信件这是对的!但是就是不能区分未读邮件!
这个是不是跟邮箱有关?
我用126的测试的!
请大哥,看看!