Conversió d'EML i MIME
Conversió d’EML i MIME
Aspose.Email FOSS for .NET inclou un analitzador i serialitzador MIME integrat, de manera que podeu convertir
entre fitxers estàndard .eml (RFC 5322) i fitxers Outlook .msg sense cap dependència externa. No cal cap referència System.Net.Mail.
Carrega EML a MapiMessage
LoadFromEml accepta una ruta de fitxer, flux o matriu d’octets:
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);Després de carregar, tots els camps estàndard estan disponibles:
Console.WriteLine(message.Subject);
Console.WriteLine(message.SenderEmailAddress);
Console.WriteLine(message.Recipients.Count);
Console.WriteLine(message.Attachments.Count);
Console.WriteLine(message.HtmlBody);Desa MapiMessage com a EML
SaveToEml serialitza un MapiMessage al 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 Conversió
Combineu LoadFromEml i Save per a una conversió completa d’EML a MSG:
using System.IO;
using Aspose.Email.Foss.Msg;
var message = MapiMessage.LoadFromEml("incoming.eml");
message.Save("converted.msg");Conversió de MSG a EML
Carrega un MSG existent i serialitza com a EML:
using var message = MapiMessage.FromFile("original.msg");
message.SaveToEml("exported.eml");Fidelitat d’anada i tornada
Els camps següents es conserven durant els viatges d’anada i tornada EML → MSG → EML:
- Assumpte, cos i cos HTML
- Nom del remitent i adreça de correu electrònic
- Tots els destinataris (A, Cc, Cco)
- Fitxers adjunts amb nom de fitxer, tipus MIME i contingut
- Internet Message-ID
- Hora de lliurament del missatge
// 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 countVegeu també
- Lectura de fitxers MSG — Carrega i inspecciona fitxers MSG
- Funcionalitats — Referència completa de funcionalitats
- Propietats MAPI — Accés a propietats de baix nivell