Skriv och läs meddelanden på Thunderbird Storage i C# .NET

Thunderbird är ett e-postklientprogram med öppen källkod som låter dig konfigurera flera e-postservrar och komma åt deras e-postmeddelanden. Detta gör det möjligt för dig att hantera e-postmeddelanden från flera konton på en och samma plats. I vissa fall kan du behöva skapa och komma åt e-postmeddelanden i Thunderbird-lagring programmatiskt. Följaktligen kommer du i den här artikeln att lära dig hur du skriver och läser meddelanden på Thunderbird-lagring i C# .NET.

C# .NET API för att skriva och läsa meddelanden i Thunderbird Storage

För att skriva och läsa e-postmeddelanden i Thunderbird-lagring kommer vi att använda Aspose.Email for .NET. Det är ett e-postbearbetnings-API som låter dig manipulera e-postmeddelanden och arbeta med populära e-postklienter som Thunderbird, Outlook, etc. Du kan ladda ner API:s DLL eller installera den från NuGet med följande kommando .

PM> Install-Package Aspose.Email

Skriv ett meddelande på Thunderbird Storage i C# .NET

Du kan skapa nya meddelanden och lagra dem på Thunderbirds lagring inom några få steg med Aspose.Email för .NET. Följande är stegen för att utföra denna operation i C#.

Följande kodexempel visar hur man skriver ett meddelande till Thunderbird-lagring i C# .NET.

// Öppna lagringsfilen med FileStream
FileStream stream = new FileStream("ExampleMbox.mbox", FileMode.Open, FileAccess.Write);

// Initiera MboxStorageWriter och skicka strömmen till den
MboxrdStorageWriter writer = new MboxrdStorageWriter(stream, false);

// Förbered ett nytt meddelande med klassen MailMessage
MailMessage message = new MailMessage("from@domain.com", "to@domain.com", Guid.NewGuid().ToString(), "added from Aspose.Email");
message.IsDraft = false;

// Lägg till det här meddelandet i lagringsutrymmet
writer.WriteMessage(message);

// Stäng alla relaterade strömmar
writer.Dispose();
stream.Close();

Läs meddelanden från Thunderbird Storage i C#

För att läsa meddelanden från Thunderbird-lagring måste vi ladda lagringsfilen med klassen MboxrdStorageReader. Följande är stegen för att läsa meddelanden från Thunderbird i C#.

  • Ladda först MBOX-filen till ett FileStream-objekt.
  • Skapa sedan en instans av MboxrdStorageReader för att läsa lagringsfilen.
  • Efter det, läs det första meddelandet med metoden MboxrdStorageReader.ReadNextMessage().
  • Starta sedan en loop för att iterera igenom alla meddelanden.
  • Läs varje meddelande och spara det på disken om det behövs.
  • Släng slutligen läsaren i slutet.

Följande kodexempel visar hur man läser meddelanden från Thunderbird-lagring i C#.

// Öppna lagringsfilen med FileStream
FileStream stream = new FileStream("ExampleMbox.mbox", FileMode.Open, FileAccess.Read);

// Skapa en instans av klassen MboxrdStorageReader och skicka strömmen
MboxrdStorageReader reader = new MboxrdStorageReader(stream, false);

// Börja läsa meddelanden
MailMessage message = reader.ReadNextMessage();

// Läs alla meddelanden i en slinga
while (message != null)
{
    // Manipulera meddelande - visa innehållet
    Console.WriteLine("Subject: " + message.Subject);
    
    // Spara detta meddelande i EML- eller MSG-format
    message.Save(message.Subject + ".eml", SaveOptions.DefaultEml);
    message.Save(message.Subject + ".msg", SaveOptions.DefaultMsgUnicode);

    // Få nästa meddelande
    message = reader.ReadNextMessage();
}

// Stäng strömmarna
reader.Dispose();
stream.Close();

Skaffa en gratis API-licens

Du kan använda Aspose.Email för .NET utan utvärderingsbegränsningar med en gratis temporär licens.

Slutsats

Med Thunderbird kan du komma åt e-postmeddelanden från flera konton på en enda plats. I den här artikeln har du lärt dig hur du skriver meddelanden till Thunderbird-lagring i C# .NET. Du har också sett hur du läser meddelanden från Thunderbird-lagring programmatiskt. Bortsett från det kan du besöka dokumentationen för att utforska andra funktioner i Aspose.Email för .NET. Om du skulle ha några frågor kan du göra ett inlägg på vårt forum.

Se även