JavaMail API来删除电子邮件涉及与该消息相关联的标志工作。Mail 有不同的标志为不同的状态,一些系统定义和一些用户定义的。预定义的标志在内部类中定义的标志。标志如下所列:
- Flags.Flag.ANSWERED
- Flags.Flag.DELETED
- Flags.Flag.DRAFT
- Flags.Flag.FLAGGED
- Flags.Flag.RECENT
- Flags.Flag.SEEN
- Flags.Flag.USER
POP协议支持的消息的唯一删除, 删除程序的基本步骤如下:
- 获取Session对象与POP和SMTP伺服器的细节的属性。我们需要的POP细节来检索信息和SMPT详细信息发送邮件;
- 创建POP3存储对象,并连接到存储;
- 创建文件夹对象,并在READ_WRITE模式下邮箱打开相应的文件夹;
- 从收件箱文件夹中检索邮件;
- 遍历的消息,获取待删除的 Message;
- 这些消息标记DELETED 实际上并没有删除,直到我们调用Folder对象上expunge() 方法,或expunge 设置为true,关闭文件夹;
- 关闭存储对象;