1. Productes
  2.   Aspose.Email
  3.   Aspose.Email FOSS for .NET

Aspose.Email FOSS for .NET

Llegeix, crea i processa fitxers Outlook MSG, contenidors CFB i missatges EML des de .NET — gratuït i de codi obert, sense dependència de Microsoft Outlook.

Biblioteca .NET de codi obert per a arxius MSG, CFB i EML

FOSS per .NET és una biblioteca C# lliure de dependències amb llicència MIT, que funciona amb arxius Microsoft Outlook .msg , contenidors Compound File Binary (CFB) i missatges EML. Afegeix un únic paquet NuGet i comença immediatament a llegir, crear i processar missages d’e-mail sense instal·lar Microsoft Excel o cap temps d ’exécution propietari.

La biblioteca proporciona dos nivells d’accés. En el nivell baix, CfbReader i CfbWriter donen control total sobre els contenidors binaris CFB entrades de directori transversals, llegeixen i escriuen nodes de magatzem i dades de flux, i inspeccionen l’estatus del sector brut. MsgReader I MsgWriter gestionen el format MSG a la part superior de CF B, exposant fluxos de propietats MAPI, taules de destinatari i sub-emmagatzematges d"accesos. Al nivell alt,MapiMessage et permet crear nous missatges des de zero, llegir, organitzar, enviar i administrar subjecte, adjuntar apanyaments, convertir entre format EMLIME i MS G mitjançant una implementació integrada en MIME.

La biblioteca està dirigida a .NET 8.0 o posterior i no té dependències natives, fent-la adequada per Windows, Linux, macOS, contenidors de Docker i funcions sense servidor. Per features addicionals i suport comercial, veure Aspose.Email for .NET.

Contenidor CFB Llegir i escriure

  • Oberir fitxers CFB: Carregar els contenidors CF B existents des d’una ruta de fitxer, flux o matriu de bytes a través de CfbReader.FromFile(), CfbReader.FromStream(), o new CfbReader(data).
  • Corregeix l’arbre de directori: Iteracions d’emmagatzematges, flux i fills utilitzant IterStorages(), IterStreams() , IterChildren() i IterTree().
  • ** Resolver camins:** Navegar per jerarquies d’emmagatzematge anidats amb ResolvePath(names) per localitzar un flux específic per cadena de noms.
  • ** Escriure contenidors CFB:** Construir documents CF B de forma programàtica amb CfbDocument i serialitzar en bytes o arxiu a través d’CfbWriter.ToBytes() o CfbWriter.WriteFile().
  • Augure emmagatzematges i flux: Anexa els nodes CfbStorage i CfbStream a qualsevol node d’emmagatzematge abans de la serialització.

On s'utilitza l'accés CFB

  • ** Inspecció de fitxers MSG:** CFB és el format de contenidor per a els arxius Outlook .msg l’accés directe al CF B permet inspecció i reparació forense.
  • Formats binaris personalitzats: Qualsevol aplicació antiga que utilitzi CFB per al emmagatzematge de dades pot ser llegida o escrita sense una dependència COM.
  • Recuperació de dades: Travessa l’arbre d’annumèries complet i extracta els bytes del flux brut dels arxius CFB danyats o no estàndard.
  • Tests binaris de tornada: Serialitzar un document en bytes i tornar a carregar-lo per verificar la serialització sense pèrdues en proves automatitzades.

Arxiu MSG Lleure i escriure

  • Llegeix arxius MSG: Obre els arxivs Outlook MS G amb MsgReader.FromFile() o MsgReader.FromStream() i accedeix als fluxos de propietats MAPI subjacents, registres dels destinataris i sot-emmagatzematges d’accesos.
  • ** Escriure fitxers MSG:** Produir fitxes MS G des d’un MsgDocument amb MsgWriter.ToBytes() o MsgWriter.WriteFile().
  • Accés MAPI de baix nivell: Llegir fluxos de propietats de primer nivell, propietat nomenades i dades d’apadhament a través de MsgStorage, MsgStream i MsgStorage.FindStream().
  • ** Navegació de l’emmagatzematge MSG:** Utilitza MsgStorage.FindStream() i MsgStorage.FindStorage() per localitzar subentries nomenades.

On s'utilitza el tractament del MSG

  • Pipelines d’arxiu de correu electrònic: Legir en massa arxius .msg des dels directoris d"archiu i extraure metadades o anexos.
  • Otils de migració: Convertir col·leccions MSG en formats estàndard per a la importació en sistemes que no siguin Outlook.
  • Descoberta legal: Parsejar els fluxos de propietats MAPI bruts per extraure tots els camps de missatges, incloses les propietat no estàndard.
  • Deliverança automàtica de informes: Construir arxius .msg programàticament i lliurar-los als sistemes de correu basats en Outlook.

API de missatges d’alt nivell

  • Crear missatges: Construir un correu electrònic complet amb MapiMessage.Create(subject, body), definir SenderName , SenderEmailAddress i HtmlBody.
  • Augure destinataris: Anexa els receptors To, Cc i Bcc a través de AddRecipient() amb l’adreça de correu electrònic i el nom d’exposició.
  • Gestionar adjuntaments: Agregar arxius i flux d’ajustaments amb AddAttachment() o construir objectes MapiAttachment directament ambFilename, MimeType , ContentId i Data.
  • Salvar i recarregar: Serialitzar amb message.Save() o message.Save(stream) i recarrejar ambMapiMessage.FromFile()o MapiMessage.FromStream().

On s'utilitza l'API d'alt nivell

  • Generació automàtica de correus electrònics: Genera milers de fitxers MSG personalitzats a partir de registres de dades en tasques per lots.
  • Creació de fixtures de prova: Crea fitxers MSG de confiança amb contingut previsible per a suites de proves d’integració.
  • Extracció d’adjuncions: Carrega un fitxer MSG, itera message.Attachments, i desa cada attachment.Data al disc.
  • Inspecció de propietats: Accedeix a message.Subject, message.Body, message.SenderEmailAddress i message.Recipients sense automatització COM.

Conversió EML i MIME

  • ** Carregar EML a MapiMessage:** Parsejar un fitxer .eml estàndard (RFC 5322 / MIME) en un objecte complet MapiMessage via MapiMessage.LoadFromEml(stream).
  • Salvar MapiMessage com EML: Serialitzar un MapiMessage de nou al format MIME amb message.SaveToEml() o message.SaveToEml(stream).
  • Fidelitat de tornada: Sujet, cos, HTML, remitent, destinatari i adjunt es conserven tots a través d’EML → MSG → EML.
  • No parser MIME extern: L’anàlisi EML s’implementa de forma nativa dins la biblioteca no es requereix dependència System.Net.Mail.

On s'utilitza la conversió EML

  • Format de pont: Recebeu correus electrònics com EML dels servidors de correu i converteix-los en MSG per al magatzem compatible amb Outlook.
  • Conformitat amb les normes: Convertir els arxius MSG propietaris en MIME estàndard per a la lliurament a qualsevol transport de correu.
  • Normalització d’arxiu: Normalitzar un arxius mixt de .eml i .msg fitxers en un únic format.
  • Flusos de treball d’assaig: Generar els aparells .eml en proves i verificar que sobreviuen al viatge MSG sense pèrdua de dades.

Llegir tema d’un fitxer MSG

Obre un fitxer Outlook MSG des d’un flux i imprimeix l’assumpte no cal Microsoft Outlook.

using System.IO;
using Aspose.Email.Foss.Msg;
using var stream = File.OpenRead("sample.msg");
var message = MapiMessage.FromStream(stream);
Console.WriteLine(message.Subject);

Crear i guardar un missatge MSG

Construeix un correu electrònic complet amb remitent, destinatari i adjunt, després escriu-lo en un fitxer MSG.

using System.IO;
using Aspose.Email.Foss.Msg;
var message = MapiMessage.Create("Hello", "Body");
message.SenderName = "Alice";
message.SenderEmailAddress = "alice@example.com";
message.AddRecipient("bob@example.com", "Bob");
using var attachmentStream = new MemoryStream("abc"u8.ToArray());
message.AddAttachment("note.txt", attachmentStream, "text/plain");
using var output = File.Create("hello.msg");
message.Save(output);

Converteix EML en MSG

Carregar un fitxer .eml estàndard i guardar-lo com a fichier Outlook .msg utilitzant l’anàlisi MIME incorporat.

using System.IO;
using Aspose.Email.Foss.Msg;
using var input = File.OpenRead("message.eml");
var message = MapiMessage.LoadFromEml(input);
using var msgOutput = File.Create("message.msg");
message.Save(msgOutput);
using var emlOutput = File.Create("roundtrip.eml");
message.SaveToEml(emlOutput);
  

Suport i recursos d aprenentatge

 Català