Scrivi e leggi messaggi su Thunderbird Storage in C# .NET

Thunderbird è un’applicazione client di posta elettronica open source che ti consente di configurare più server di posta elettronica e accedere ai loro messaggi di posta elettronica. Ciò ti consente di gestire le e-mail da più account in un unico posto. In alcuni casi, potrebbe essere necessario creare e accedere ai messaggi di posta elettronica nella memoria di Thunderbird in modo programmatico. Di conseguenza, in questo articolo imparerai come scrivere e leggere messaggi nell’archivio Thunderbird in C# .NET.

API C# .NET per scrivere e leggere messaggi in Thunderbird Storage

Per scrivere e leggere messaggi di posta elettronica nella memoria di Thunderbird, utilizzeremo Aspose.Email for .NET. È un’API di elaborazione e-mail che ti consente di manipolare le e-mail e lavorare con i client di posta elettronica più diffusi come Thunderbird, Outlook, ecc. Puoi scaricare la DLL dell’API o installarla da NuGet usando il comando seguente .

PM> Install-Package Aspose.Email

Scrivi un messaggio su Thunderbird Storage in C# .NET

Puoi creare nuovi messaggi e archiviarli nella memoria di Thunderbird in pochi passaggi utilizzando Aspose.Email per .NET. Di seguito sono riportati i passaggi per eseguire questa operazione in C#.

L’esempio di codice seguente mostra come scrivere un messaggio nell’archivio Thunderbird in C# .NET.

// Apri il file di archiviazione con FileStream
FileStream stream = new FileStream("ExampleMbox.mbox", FileMode.Open, FileAccess.Write);

// Inizializza MboxStorageWriter e passagli il flusso
MboxrdStorageWriter writer = new MboxrdStorageWriter(stream, false);

// Prepara un nuovo messaggio usando la classe MailMessage
MailMessage message = new MailMessage("from@domain.com", "to@domain.com", Guid.NewGuid().ToString(), "added from Aspose.Email");
message.IsDraft = false;

// Aggiungi questo messaggio alla memoria
writer.WriteMessage(message);

// Chiudi tutti i flussi correlati
writer.Dispose();
stream.Close();

Leggi i messaggi da Thunderbird Storage in C#

Per leggere i messaggi dalla memoria di Thunderbird, dobbiamo caricare il file di memoria usando la classe MboxrdStorageReader. Di seguito sono riportati i passaggi per leggere i messaggi da Thunderbird in C#.

  • Innanzitutto, carica il file MBOX in un oggetto FileStream.
  • Quindi, crea un’istanza di MboxrdStorageReader per leggere il file di archiviazione.
  • Successivamente, leggi il primo messaggio utilizzando il metodo MboxrdStorageReader.ReadNextMessage().
  • Quindi, avvia un ciclo per scorrere tutti i messaggi.
  • Leggere ogni messaggio e salvarlo su disco, se necessario.
  • Infine, smaltisci il lettore alla fine.

L’esempio di codice seguente mostra come leggere i messaggi dall’archivio Thunderbird in C#.

// Apri il file di archiviazione con FileStream
FileStream stream = new FileStream("ExampleMbox.mbox", FileMode.Open, FileAccess.Read);

// Crea un'istanza della classe MboxrdStorageReader e passa il flusso
MboxrdStorageReader reader = new MboxrdStorageReader(stream, false);

// Inizia a leggere i messaggi
MailMessage message = reader.ReadNextMessage();

// Leggi tutti i messaggi in un ciclo
while (message != null)
{
    // Manipola messaggio - mostra i contenuti
    Console.WriteLine("Subject: " + message.Subject);
    
    // Salva questo messaggio in formato EML o MSG
    message.Save(message.Subject + ".eml", SaveOptions.DefaultEml);
    message.Save(message.Subject + ".msg", SaveOptions.DefaultMsgUnicode);

    // Ricevi il messaggio successivo
    message = reader.ReadNextMessage();
}

// Chiudi i flussi
reader.Dispose();
stream.Close();

Ottieni una licenza API gratuita

È possibile utilizzare Aspose.Email per .NET senza limitazioni di valutazione utilizzando una licenza temporanea gratuita.

Conclusione

Utilizzando Thunderbird, puoi accedere ai messaggi e-mail da più account in un’unica posizione. In questo articolo, hai imparato come scrivere messaggi nell’archivio Thunderbird in C# .NET. Inoltre, hai visto come leggere i messaggi dalla memoria di Thunderbird a livello di codice. Oltre a questo, puoi visitare la documentazione per esplorare altre funzionalità di Aspose.Email per .NET. In caso aveste domande, potete postare sul nostro forum.

Guarda anche