EML ir MIME konvertavimas

EML ir MIME konvertavimas

EML ir MIME konvertavimas

Aspose.Email FOSS for .NET turi įmontuotą MIME analizatorių ir serializatorių, todėl galite konvertuoti tarp standartinių .eml failų (RFC 5322) ir Outlook .msg failų be jokių išorinių priklausomybių. Nereikia System.Net.Mail nuorodos.


Įkelti EML į MapiMessage

LoadFromEml priima failo kelią, srautą arba baitų masyvą:

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

Įkėlus, visi standartiniai laukai yra prieinami:

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

Išsaugoti MapiMessage kaip EML

SaveToEml serializuoja MapiMessage į MIME formatą:

// 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 konvertavimas

Sujunkite LoadFromEml ir Save, kad gautumėte pilną EML‑į‑MSG konversiją:

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

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

MSG → EML konvertavimas

Įkelti esamą MSG ir serializuoti kaip EML:

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

Grįžtamojo kelio tikslumas

Šie laukai išlieka nepakitę per EML → MSG → EML keliones:

  • Tema, laiško turinys ir HTML turinys
  • Siuntėjo vardas ir el. pašto adresas
  • Visi gavėjai (Kam, Kopija, Slapta kopija)
  • Failų priedai su failo pavadinimu, MIME tipu ir turiniu
  • Interneto Message-ID
  • Žinutės pristatymo laikas
// 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

Žr. taip pat

 Lietuvių