Konverze EML a MIME

Konverze EML a MIME

Aspose.Email FOSS for .NET includes a built-in MIME parser and serializer, so you can convert mezi standardním a .eml soubory (RFC 5322) a Outlook .msg soubory bez externích Závislosti. System.Net.Mail je třeba odkazovat.


Naložit EML do MapiMessage

LoadFromEml přijímá cestu souboru, tok nebo bajtový řetězec:

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

Po načtení jsou k dispozici všechna standardní pole:

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

Uložení MapiMessage jako EML

SaveToEml sérializace a MapiMessage do formátu 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 konverze

Spojit LoadFromEml a) Save pro úplné přeměnu z EML na MSG:

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

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

Konverze MSG → EML

Naložit existující MSG a sériově zařadit jako EML:

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

Věrnost na cestě zpět a zpátky

Následující pole jsou zachovány prostřednictvím EML → MSG → EM L:

  • Předmět, tělo a HTML tělo
  • Název a e-mailová adresa odesílatele
  • Všechny příjemce (To, Cc, Bcc)
  • Přílohy souborů s názvem souboru, typem MIME a obsahem
  • Internetový ID zpráv
  • Čas doručení zprávy
// 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

Viz také:

 Čeština