تحويل EML و MIME
تحويل EML و MIME
يتضمن Aspose.Email FOSS لـ .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
- اسم المرسل وعنوان البريد الإلكتروني
- جميع المستلمين (إلى، نسخة، نسخة مخفية)
- مرفقات الملفات مع اسم الملف، نوع 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 — وصول منخفض المستوى إلى الخصائص