EML och MIME‑konvertering
EML och MIME-konvertering
Aspose.Email FOSS för .NET innehåller en inbyggd MIME‑parser och -serializer, så att du kan konvertera mellan standard .eml‑filer (RFC 5322) och Outlook .msg‑filer utan några externa beroenden. Ingen System.Net.Mail‑referens behövs.
Läs in EML i MapiMessage
LoadFromEml accepterar en filväg, ström eller bytearray:
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);Efter inläsning är alla standardfält tillgängliga:
Console.WriteLine(message.Subject);
Console.WriteLine(message.SenderEmailAddress);
Console.WriteLine(message.Recipients.Count);
Console.WriteLine(message.Attachments.Count);
Console.WriteLine(message.HtmlBody);Spara MapiMessage som EML
SaveToEml serialiserar en MapiMessage till 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-konvertering
Kombinera LoadFromEml och Save för en fullständig EML‑till‑MSG‑omvandling:
using System.IO;
using Aspose.Email.Foss.Msg;
var message = MapiMessage.LoadFromEml("incoming.eml");
message.Save("converted.msg");MSG → EML‑konvertering
Läs in ett befintligt MSG och serialisera som EML:
using var message = MapiMessage.FromFile("original.msg");
message.SaveToEml("exported.eml");Rundresans fidelitet
Följande fält bevaras genom EML → MSG → EML‑rundresor:
- Ämne, brödtext och HTML‑brödtext
- Avsändarens namn och e‑postadress
- Alla mottagare (Till, Kopia, Dold kopia)
- Filbilagor med filnamn, MIME‑typ och innehåll
- Internet‑meddelande‑ID
- Meddelandets leveranstid
// 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 countSe även
- Läsa MSG-filer — Ladda och inspektera MSG-filer
- Funktioner — Fullständig funktionsreferens
- MAPI-egenskaper — Lågnivååtkomst till egenskaper