نوشتن و خواندن پیام ها در Thunderbird Storage در 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 بنویسید

با استفاده از Aspose.Email برای دات نت می توانید پیام های جدیدی ایجاد کنید و در طی چند مرحله آنها را در حافظه Thunderbird ذخیره کنید. در ادامه مراحل انجام این عمل در سی شارپ آمده است.

  • ابتدا فایل 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 Storage در سی شارپ

برای خواندن پیام‌های ذخیره‌سازی Thunderbird، باید فایل ذخیره‌سازی را با استفاده از کلاس MboxrdStorageReader بارگیری کنیم. مراحل زیر برای خواندن پیام های Thunderbird در سی شارپ آمده است.

  • ابتدا فایل MBOX را در یک شیء FileStream بارگذاری کنید.
  • سپس، یک نمونه از MboxrdStorageReader برای خواندن فایل ذخیره سازی ایجاد کنید.
  • پس از آن، اولین پیام را با استفاده از روش MboxrdStorageReader.ReadNextMessage() بخوانید.
  • سپس، یک حلقه برای تکرار در تمام پیام ها راه اندازی کنید.
  • هر پیام را بخوانید و در صورت نیاز روی دیسک ذخیره کنید.
  • در نهایت خواننده را در انتها از بین ببرید.

نمونه کد زیر نحوه خواندن پیام های ذخیره سازی Thunderbird در سی شارپ را نشان می دهد.

// فایل ذخیره سازی را با 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 برای دات نت بدون محدودیت ارزیابی با استفاده از مجوز موقت رایگان استفاده کنید.

نتیجه

با استفاده از Thunderbird، می‌توانید به پیام‌های ایمیل از چندین حساب در یک مکان دسترسی داشته باشید. در این مقاله نحوه نوشتن پیام به فضای ذخیره سازی Thunderbird در C# .NET را یاد گرفتید. همچنین، نحوه خواندن پیام‌های ذخیره‌سازی Thunderbird را به صورت برنامه‌ریزی دیده‌اید. جدای از آن، می‌توانید برای بررسی سایر ویژگی‌های Aspose.Email برای دات‌نت، از مستندات دیدن کنید. در صورت داشتن هر گونه سوال، می توانید در [فروم 15 ما پست کنید.

همچنین ببینید