Pisz i czytaj wiadomości w Thunderbird Storage w C# .NET

Thunderbird to aplikacja klienta poczty e-mail typu open source, która umożliwia konfigurowanie wielu serwerów poczty e-mail i uzyskiwanie dostępu do ich wiadomości e-mail. Dzięki temu możesz zarządzać wiadomościami e-mail z wielu kont w jednym miejscu. W niektórych przypadkach może być konieczne programowe tworzenie i uzyskiwanie dostępu do wiadomości e-mail w pamięci masowej Thunderbird. W związku z tym w tym artykule dowiesz się, jak pisać i odczytywać wiadomości w pamięci masowej Thunderbird w języku C# .NET.

C# .NET API do zapisywania i odczytywania wiadomości w Thunderbird Storage

Aby pisać i czytać wiadomości e-mail w pamięci masowej Thunderbird, użyjemy Aspose.Email for .NET. Jest to interfejs API do przetwarzania wiadomości e-mail, który umożliwia manipulowanie wiadomościami e-mail i pracę z popularnymi klientami poczty e-mail, takimi jak Thunderbird, Outlook itp. Możesz pobrać bibliotekę DLL interfejsu API lub zainstalować ją z NuGet za pomocą następującego polecenia .

PM> Install-Package Aspose.Email

Napisz wiadomość o pamięci masowej Thunderbirda w języku C# .NET

Możesz tworzyć nowe wiadomości i przechowywać je w pamięci Thunderbirda w kilku krokach za pomocą Aspose.Email for .NET. Poniżej przedstawiono kroki, aby wykonać tę operację w języku C#.

Poniższy przykładowy kod pokazuje, jak napisać wiadomość do magazynu Thunderbirda w języku C# .NET.

// Otwórz plik magazynu za pomocą FileStream
FileStream stream = new FileStream("ExampleMbox.mbox", FileMode.Open, FileAccess.Write);

// Zainicjuj MboxStorageWriter i przekaż do niego strumień
MboxrdStorageWriter writer = new MboxrdStorageWriter(stream, false);

// Przygotuj nową wiadomość przy użyciu klasy MailMessage
MailMessage message = new MailMessage("from@domain.com", "to@domain.com", Guid.NewGuid().ToString(), "added from Aspose.Email");
message.IsDraft = false;

// Dodaj tę wiadomość do pamięci
writer.WriteMessage(message);

// Zamknij wszystkie powiązane strumienie
writer.Dispose();
stream.Close();

Czytaj wiadomości z Thunderbirda w C#

Aby odczytać wiadomości z magazynu Thunderbirda, musimy załadować plik magazynu przy użyciu klasy MboxrdStorageReader. Poniżej przedstawiono kroki, aby odczytać wiadomości z Thunderbirda w języku C#.

  • Najpierw załaduj plik MBOX do obiektu FileStream.
  • Następnie utwórz instancję MboxrdStorageReader, aby odczytać plik pamięci.
  • Następnie przeczytaj pierwszą wiadomość metodą MboxrdStorageReader.ReadNextMessage().
  • Następnie uruchom pętlę, aby przejść przez wszystkie komunikaty.
  • Przeczytaj każdą wiadomość iw razie potrzeby zapisz ją na dysku.
  • Na koniec pozbądź się czytnika.

Poniższy przykładowy kod pokazuje, jak odczytywać wiadomości z magazynu Thunderbirda w języku C#.

// Otwórz plik magazynu za pomocą FileStream
FileStream stream = new FileStream("ExampleMbox.mbox", FileMode.Open, FileAccess.Read);

// Utwórz instancję klasy MboxrdStorageReader i przekaż strumień
MboxrdStorageReader reader = new MboxrdStorageReader(stream, false);

// Zacznij czytać wiadomości
MailMessage message = reader.ReadNextMessage();

// Czytaj wszystkie wiadomości w pętli
while (message != null)
{
    // Manipuluj wiadomością - pokaż zawartość
    Console.WriteLine("Subject: " + message.Subject);
    
    // Zapisz tę wiadomość w formacie EML lub MSG
    message.Save(message.Subject + ".eml", SaveOptions.DefaultEml);
    message.Save(message.Subject + ".msg", SaveOptions.DefaultMsgUnicode);

    // Pobierz następną wiadomość
    message = reader.ReadNextMessage();
}

// Zamknij strumienie
reader.Dispose();
stream.Close();

Uzyskaj bezpłatną licencję API

Możesz używać Aspose.Email for .NET bez ograniczeń ewaluacyjnych, korzystając z darmowej licencji tymczasowej.

Wniosek

Korzystając z Thunderbirda, możesz uzyskiwać dostęp do wiadomości e-mail z wielu kont w jednym miejscu. W tym artykule nauczyłeś się pisać wiadomości do magazynu Thunderbirda w języku C# .NET. Widziałeś też, jak programowo odczytywać wiadomości z magazynu Thunderbirda. Oprócz tego możesz odwiedzić dokumentację, aby poznać inne funkcje Aspose.Email for .NET. Jeśli masz jakieś pytania, możesz pisać na naszym forum.

Zobacz też