تبدیل EML و MIME
تبدیل EML و MIME
Aspose.Email FOSS for .NET شامل یک تجزیهگر و سریالایزر MIME داخلی است، بنابراین میتوانید بین فایلهای استاندارد .eml (RFC 5322) و فایلهای Outlook .msg بدون هیچ وابستگی خارجی تبدیل کنید. نیازی به مرجع System.Net.Mail نیست.
بارگذاری EML در MapiMessage
LoadFromEml یک مسیر فایل، جریان یا آرایه بایت را میپذیرد:
using System.IO;
using Aspose.Email.Foss.Msg;
// From file path
var message = MapiMessage.LoadFromEml("incoming.eml");
// From stream
using var stream = File.OpenRead("incoming.eml");
var message2 = MapiMessage.LoadFromEml(stream);
// From byte array
var emlBytes = File.ReadAllBytes("incoming.eml");
var message3 = MapiMessage.LoadFromEml(emlBytes);پس از بارگذاری، تمام فیلدهای استاندارد در دسترس هستند:
Console.WriteLine(message.Subject);
Console.WriteLine(message.SenderEmailAddress);
Console.WriteLine(message.Recipients.Count);
Console.WriteLine(message.Attachments.Count);
Console.WriteLine(message.HtmlBody);ذخیره MapiMessage به صورت EML
SaveToEml یک MapiMessage را به فرمت MIME سریالسازی میکند:
// To file path
message.SaveToEml("output.eml");
// To stream
using var outStream = File.Create("output.eml");
message.SaveToEml(outStream);
// To byte array
byte[] emlData = message.SaveToEml();تبدیل EML → MSG
LoadFromEml و Save را ترکیب کنید برای تبدیل کامل EML به MSG:
using System.IO;
using Aspose.Email.Foss.Msg;
var message = MapiMessage.LoadFromEml("incoming.eml");
message.Save("converted.msg");MSG → EML تبدیل
بارگذاری یک MSG موجود و سریالسازی بهصورت EML:
using var message = MapiMessage.FromFile("original.msg");
message.SaveToEml("exported.eml");دقت رفتوبرگشت
فیلدهای زیر در طی تبدیلهای EML → MSG → EML حفظ میشوند:
- موضوع، متن و متن HTML
- نام فرستنده و آدرس ایمیل
- تمام دریافتکنندگان (To، Cc، Bcc)
- پیوستهای فایل با نام فایل، نوع MIME و محتوا
- شناسه پیام اینترنتی (Message-ID)
- زمان تحویل پیام
// Verify round-trip
var original = MapiMessage.LoadFromEml("test.eml");
original.Save("test.msg");
using var reloaded = MapiMessage.FromFile("test.msg");
reloaded.SaveToEml("roundtrip.eml");
// Compare: original.eml and roundtrip.eml should have
// matching Subject, From, To, and attachment countموارد مرتبط
- خواندن فایلهای MSG — بارگذاری و بررسی فایلهای MSG
- ویژگیها — مرجع کامل ویژگیها
- ویژگیهای MAPI — دسترسی به ویژگیهای سطح پایین