gpt4 book ai didi

java - 如何使用 javax mail 归档电子邮件

转载 作者:行者123 更新时间:2023-12-01 10:10:47 26 4
gpt4 key购买 nike

我需要存档/存储 java 形式的 gmail 电子邮件,但我只知道将其设置为已读/未读...

这是我的代码:

public class CheckingMails {

private static Session session = null;
private static Store store = null;
private static Folder inbox = null;

public static void check(String host, String storeType, final String user,
final String password)
{
try {
Properties properties = new Properties();
properties.setProperty("mail.host", "imap.gmail.com");
properties.setProperty("mail.port", "995");
properties.setProperty("mail.transport.protocol", "imaps");
session = Session.getInstance(properties,new javax.mail.Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(user, password);
}});
store = session.getStore("imaps");
store.connect();
inbox = store.getFolder("INBOX");
inbox.open(Folder.READ_WRITE);
Message messages[] = inbox.search(new FlagTerm(new Flags(Flag.SEEN), false));
for (int i = 0; i < messages.length; i++) {
if(messages[i].getSubject().contains("Ticket#")){
System.out.println("Number of Ticket = " + messages.length);
messages[i].setFlag(Flag.SEEN, true);
}

}
inbox.close(true);
store.close();

} catch (NoSuchProviderException e) {
e.printStackTrace();
} catch (MessagingException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}

有人可以解释一下如何存档吗?

最佳答案

我假设“存档”的意思是“将其移动到服务器上的存档文件夹”。

使用Folder.copyMessages将邮件复制到存档文件夹,然后使用 Message.setFlag 将原始邮件标记为“已删除” .

关于java - 如何使用 javax mail 归档电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36134318/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com