EML un MIME konvertēšana

EML un MIME konvertēšana

Aspose.Email FOSS for .NET ietver iebūvētu MIME parseri un serializētāju, tāpēc varat konvertēt starp standarta .eml failiem (RFC 5322) un Outlook .msg failiem bez ārējām atkarībām. Nav nepieciešama System.Net.Mail atsauce.


Ielādēt EML uz MapiMessage

LoadFromEml pieņem faila ceļu, plūsmu vai baitu masīvu:

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

Ielādējot, visi standarta lauki ir pieejami:

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

Saglabāt MapiMessage kā EML

SaveToEml serializē MapiMessage uz MIME formātu:

// 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 konvertēšana

Apvienojiet LoadFromEml un Save, lai veiktu pilnu EML uz MSG konvertēšanu:

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

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

MSG → EML konvertēšana

Ielādēt esošu MSG un serializēt kā EML:

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

Apgrieztais Ceļš Precizitāte

Šādi lauki tiek saglabāti caur EML → MSG → EML apmaiņām:

  • Temats, ķermenis un HTML ķermenis
  • Sūtītāja vārds un e-pasta adrese
  • Visi saņēmēji (To, Cc, Bcc)
  • Failu pielikumi ar faila nosaukumu, MIME tipu un saturu
  • Internet Message-ID
  • Ziņas piegādes laiks
// 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

Skatīt arī

 Latviešu