Запис і читання повідомлень у сховищі Thunderbird у C# .NET

Thunderbird — це клієнтська програма електронної пошти з відкритим вихідним кодом, яка дозволяє налаштовувати кілька серверів електронної пошти та отримувати доступ до їхніх електронних повідомлень. Це дає змогу керувати електронними листами з кількох облікових записів в одному місці. У деяких випадках вам може знадобитися програмно створювати повідомлення електронної пошти в сховищі Thunderbird і отримувати доступ до них. Відповідно, у цій статті ви дізнаєтесь, як писати та читати повідомлення у сховищі Thunderbird у C# .NET.

C# .NET API для запису та читання повідомлень у сховищі Thunderbird

Щоб писати та читати електронні листи в сховищі Thunderbird, ми будемо використовувати Aspose.Email for .NET. Це API для обробки електронної пошти, який дозволяє керувати електронними листами та працювати з популярними клієнтами електронної пошти, такими як Thunderbird, Outlook тощо. Ви можете завантажити DLL API або встановити його з NuGet за допомогою такої команди .

PM> Install-Package Aspose.Email

Напишіть повідомлення про сховище Thunderbird у C# .NET

Ви можете створювати нові повідомлення та зберігати їх у сховищі Thunderbird за кілька кроків за допомогою Aspose.Email for .NET. Нижче наведено кроки для виконання цієї операції в C#.

  • Спочатку завантажте файл MBOX в об’єкт FileStream.
  • Потім створіть екземпляр MboxrdStorageWriter та ініціалізуйте його за допомогою потоку.
  • Після цього створіть нове MailMessage і встановіть його властивості.
  • Запишіть повідомлення в сховище за допомогою методу MboxrdStorageWriter.WriteMessage(MailMessage).
  • Нарешті позбавтеся автора та закрийте потік.

У наведеному нижче прикладі коду показано, як написати повідомлення до сховища Thunderbird у C# .NET.

// Відкрийте файл зберігання за допомогою FileStream
FileStream stream = new FileStream("ExampleMbox.mbox", FileMode.Open, FileAccess.Write);

// Ініціалізуйте MboxStorageWriter і передайте йому потік
MboxrdStorageWriter writer = new MboxrdStorageWriter(stream, false);

// Підготуйте нове повідомлення за допомогою класу MailMessage
MailMessage message = new MailMessage("from@domain.com", "to@domain.com", Guid.NewGuid().ToString(), "added from Aspose.Email");
message.IsDraft = false;

// Додайте це повідомлення до сховища
writer.WriteMessage(message);

// Закрийте всі пов’язані потоки
writer.Dispose();
stream.Close();

Читання повідомлень зі сховища Thunderbird у C#

Щоб прочитати повідомлення зі сховища Thunderbird, нам потрібно завантажити файл сховища за допомогою класу MboxrdStorageReader. Нижче наведено кроки для читання повідомлень від Thunderbird у C#.

  • Спочатку завантажте файл MBOX в об’єкт FileStream.
  • Потім створіть екземпляр MboxrdStorageReader, щоб прочитати файл зберігання.
  • Після цього прочитайте перше повідомлення за допомогою методу MboxrdStorageReader.ReadNextMessage().
  • Потім запустіть цикл, щоб переглянути всі повідомлення.
  • Прочитайте кожне повідомлення та за потреби збережіть його на диску.
  • Нарешті, утилізуйте рідер в кінці.

У наведеному нижче прикладі коду показано, як читати повідомлення зі сховища Thunderbird у C#.

// Відкрийте файл зберігання за допомогою FileStream
FileStream stream = new FileStream("ExampleMbox.mbox", FileMode.Open, FileAccess.Read);

// Створіть екземпляр класу MboxrdStorageReader і передайте потік
MboxrdStorageReader reader = new MboxrdStorageReader(stream, false);

// Почніть читати повідомлення
MailMessage message = reader.ReadNextMessage();

// Читати всі повідомлення в циклі
while (message != null)
{
    // Маніпулювати повідомленням - показати вміст
    Console.WriteLine("Subject: " + message.Subject);
    
    // Збережіть це повідомлення у форматі EML або MSG
    message.Save(message.Subject + ".eml", SaveOptions.DefaultEml);
    message.Save(message.Subject + ".msg", SaveOptions.DefaultMsgUnicode);

    // Отримати наступне повідомлення
    message = reader.ReadNextMessage();
}

// Закрийте потоки
reader.Dispose();
stream.Close();

Отримайте безкоштовну ліцензію API

Ви можете використовувати Aspose.Email for .NET без оціночних обмежень за допомогою безкоштовної тимчасової ліцензії.

Висновок

Використовуючи Thunderbird, ви можете отримати доступ до повідомлень електронної пошти з кількох облікових записів в одному місці. У цій статті ви дізналися, як писати повідомлення до сховища Thunderbird у C# .NET. Крім того, ви бачили, як програмно читати повідомлення зі сховища Thunderbird. Крім того, ви можете відвідати документацію, щоб дослідити інші функції Aspose.Email for .NET. Якщо у вас виникнуть запитання, ви можете опублікувати їх на нашому форумі.

Дивись також