Cancellazione dei messaggi dal server

Eliminazione dei messaggi

Il ImapClient La classe può eliminare messaggi da un server IMAP. Il ImapClient classe deleteMessage() La funzione viene usata per eliminare i messaggi. Accetta il numero di sequenza del messaggio o l’ID unico come parametro. Il ImapClient fornisce deleteMessage e deleteMessages metodi per eliminare i messaggi uno per uno o in blocco. Il seguente frammento di codice mostra come eliminare un messaggio email con ID 1 da un server IMAP.

try (ImapClient client = new ImapClient("host", "username", "password")) {
    client.setSecurityOptions(SecurityOptions.SSLImplicit);

    // Append test message
    client.selectFolder(ImapFolderInfo.IN_BOX);

    MailMessage eml = new MailMessage("from@from.com", "to@to.com");
    eml.setSubject("Message to delete");
    eml.setBody("Hey! This Message will be deleted!");
    String emlId = client.appendMessage(eml);

    // Delete appended message
    client.deleteMessage(emlId);
    client.commitDeletes();
}

Cancellazione di più messaggi

Più email possono essere eliminate dalla casella di posta usando il ImapClient dell’API Aspose.Email. Il deleteMessages Il metodo offre diverse opzioni per eliminare più messaggi dal server usando ID unici, numeri di sequenza o ImapMessageInfoCollection elementi. Il seguente frammento di codice mostra come eliminare più messaggi.

try (ImapClient client = new ImapClient("host", "username", "password")) {
    client.selectFolder(ImapFolderInfo.IN_BOX);

    // Append test messages
    List<MailMessage> emlList = new ArrayList<>();
    for (int i = 0; i < 3; i++) {
        MailMessage eml = new MailMessage("from@from.com", "to@to.com");
        eml.setSubject("Message to delete " + i);
        eml.setBody("Hey! This Message will be deleted!");

        emlList.add(eml);
    }

    AppendMessagesResult appendMessagesResult = client.appendMessages(emlList);
    List<String> uidList = new ArrayList<>();
    for (String uid : appendMessagesResult.getSucceeded().getValues()) {
        uidList.add(uid);
    }

    // Bulk Delete appended Messages
    client.deleteMessagesByUids(uidList, true);
    client.commitDeletes();
}