
MBOX è una famiglia di formati di file di casella di posta utilizzati da varie applicazioni di posta elettronica come Thunderbird, Eudora, Apple Mail, Entourage, ecc. Il file MBOX è il formato tipico per memorizzare le email. Contiene tutti i dati dei messaggi, comprese le proprietà, il corpo e gli allegati. A volte, per diversi motivi, è necessario unire i file di dati MBOX. Alcuni di questi motivi sono elencati di seguito:
- Ci sono diversi archivi e-mail che possono essere combinati in uno solo per la memorizzazione
- Per migliorare le prestazioni di ricerca di determinate email
- Per la conversione successiva del file MBOX unito in un altro formato di casella di posta, come PST
- Per unire più caselle di posta in un unico file
In questo articolo, impareremo come unire più file MBOX in un unico file in C#.
I seguenti argomenti saranno trattati in questo articolo:
API C# per unire file MBOX
Per unire i file MBOX, utilizzeremo Aspose.Email per .NET. È una libreria popolare e ricca di funzionalità per implementare applicazioni di posta elettronica utilizzando .NET. Inoltre, ti consente di manipolare e convertire vari formati di email. Puoi installare Aspose.Email per .NET tramite NuGet o scaricare il suo DLL.
PM> Install-Package Aspose.Email
Come unire più file MBOX
I seguenti sono i passaggi per unire più file MBOX in un unico file MBOX utilizzando Aspose.Email per .NET.
- Creare un file MBOX di destinazione per la scrittura
- Caricare sequenzialmente i file MBOX sorgente
- Leggere i messaggi da un file MBOX sorgente e scriverli in un file MBOX di destinazione
Scriviamo ora il codice e uniamo i file MBOX utilizzando C#.
Unire più file MBOX usando C#
I seguenti sono i passaggi per unire i file MBOX in C#.
- Creare un file MBOX di destinazione per la scrittura utilizzando la classe MboxrdStorageWriter.
- Aprire i file MBOX sorgente in un ciclo utilizzando il metodo MboxStorageReader.CreateReader.
- Leggere il messaggio dal file MBOX sorgente utilizzando EnumerateMessages e scriverlo nel file MBOX di destinazione utilizzando WriteMessage in un ciclo.
Il seguente esempio di codice mostra come unire i file MBOX.
/// <summary>Merges MBOX files.</summary> | |
/// <param name="targetMbox">A target MBOX filename.</param> | |
/// <param name="sourceMbox">A list of MBOX filenames to merge.</param> | |
/// <exception cref="System.InvalidOperationException">The target MBOX file already exists.</exception> | |
public static void MergeMboxes(string targetMbox, params string[] sourceMbox) | |
{ | |
if (File.Exists(targetMbox)) | |
{ | |
throw new InvalidOperationException("The target mbox file already exists."); | |
} | |
// create a target MBOX and open it to writing | |
using (var mboxWriter = new MboxrdStorageWriter(targetMbox, false)) | |
{ | |
// open and read source MBOX files in a loop | |
foreach (var sourceFileName in sourceMbox) | |
{ | |
using (var mboxReader = new MboxStorageReader.CreateReader(sourceFileName, new MboxLoadOptions)) | |
{ | |
// read message from source and write it to target | |
foreach (var message in mboxReader.EnumerateMessages()) | |
{ | |
mboxWriter.WriteMessage(message); | |
} | |
} | |
} | |
} | |
} |
Ottieni una Licenza Gratuita
Puoi ottenere una licenza temporanea gratuita per utilizzare Aspose.Email per .NET senza limitazioni di valutazione.
Conclusione
In questo articolo, hai appreso come unire i file MBOX in C#. Puoi semplicemente installare Aspose.Email per .NET e integrare il supporto per il formato MBOX nelle tue applicazioni. Inoltre, puoi esplorare altre funzionalità di Aspose.Email utilizzando la documentazione. Inoltre, puoi inviare le tue domande al nostro forum.