Konversi EML dan MIME

Konversi EML dan MIME

Aspose.Email FOSS untuk .NET menyertakan parser dan serializer MIME bawaan, sehingga Anda dapat mengonversi antara file .eml standar (RFC 5322) dan file Outlook .msg tanpa ketergantungan eksternal. Tidak diperlukan referensi System.Net.Mail.


Muat EML ke MapiMessage

LoadFromEml menerima jalur file, aliran, atau array byte:

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);

Setelah memuat, semua bidang standar tersedia:

Console.WriteLine(message.Subject);
Console.WriteLine(message.SenderEmailAddress);
Console.WriteLine(message.Recipients.Count);
Console.WriteLine(message.Attachments.Count);
Console.WriteLine(message.HtmlBody);

Simpan MapiMessage sebagai EML

SaveToEml menyerialkan MapiMessage ke format 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 Konversi

Gabungkan LoadFromEml dan Save untuk konversi EML‑ke‑MSG secara lengkap:

using System.IO;
using Aspose.Email.Foss.Msg;

var message = MapiMessage.LoadFromEml("incoming.eml");
message.Save("converted.msg");

Konversi MSG → EML

Muat MSG yang ada dan serialisasikan sebagai EML:

using var message = MapiMessage.FromFile("original.msg");
message.SaveToEml("exported.eml");

Keakuratan Putar Balik

Bidang-bidang berikut dipertahankan melalui perjalanan bolak-balik EML → MSG → EML:

  • Subjek, isi, dan isi HTML
  • Nama pengirim dan alamat email
  • Semua penerima (To, Cc, Bcc)
  • Lampiran file dengan nama file, tipe MIME, dan konten
  • ID Pesan Internet
  • Waktu pengiriman pesan
// 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

Lihat Juga

 Bahasa Indonesia