本文转载自:http://blog.csdn.net/chjttony/article/details/6005594
标记邮件就是把邮件标记为已读,删除等操作,需要使用Flags类,它mail.jar包中的Flags类代表以组邮件标记的集合,邮件标记用于标示邮件的使用情况,例如邮件的删除标记、已读标记等。JavaMail中的邮件标记分为系统标记和用户标记,系统标记指Flags.Flag这个内部类中表示的邮件标记,用户标记指用户自定义的标记。
Flags.Flag类:是Flags的内部类,以定义了一些常量类分别表示各种不同的邮件标记,这些邮件标记都是系统标记。如下所示:
Flags.Flag.ANSWERED |
邮件回复标记,标识邮件是否已回复。 |
Flags.Flag.DELETED |
邮件删除标记,标识邮件是否需要删除。 |
Flags.Flag.DRAFT |
草稿邮件标记,标识邮件是否为草稿。 |
Flags.Flag.FLAGGED |
表示邮件是否为回收站中的邮件。 |
Flags.Flag.RECENT |
新邮件标记,表示邮件是否为新邮件。 |
Flags.Flag.SEEN |
邮件阅读标记,标识邮件是否已被阅读。 |
Flags.Flag.USER |
底层系统是否支持用户自定义标记,应用程序只能检索这个属性,而不能设置这个属性。 |
标记邮件的操作如下:
(1).设置邮件标记:
//设置标记时需要以读写权限打开收件箱 Folder.open(Folder.READ_WRITE); //设置标记 Message.setFlag(标记,true); Message.saveChanges();
(2).清除邮件标记
//清除邮件标记时也需要以读写权限打开收件箱 Folder.open(Folder.READ_WRITE); //获取邮件标记 Flags flags=message.getFlags(); If(flags.contains(Flags.Flag)) { //清除邮件标记 Message.setFlag(Flags.Flag,false); } Message.saveChanges();