Aspose.Email FOSS for .NET je MIT-licencirana, bez ovisnosti C# biblioteka za rad s Microsoft Outlook .msg datotekama, Compound File Binary (CFB) kontejnerima i EML porukama. Dodajte jedan NuGet paket i odmah počnite čitati, stvarati i obrađivati e‑mail poruke bez instaliranja Microsoft Outlooka ili bilo kojeg vlasničkog runtimea.
Biblioteka pruža dvije razine pristupa. Na niskoj razini, CfbReader i CfbWriter daju potpunu kontrolu nad CFB binary containers — prolazite kroz unose direktorija, čitate i pišete čvorove pohrane i podatke toka te pregledavate sirovi raspored sektora. MsgReader i MsgWriter obrađuju MSG format na vrhu CFB, izlažući MAPI property streams, recipient tables i attachment sub-storages. Na visokoj razini, MapiMessage vam omogućuje stvaranje novih poruka od nule, čitanje subject, body, sender i recipients, upravljanje attachments i konverziju između MSG i EML formata putem ugrađene MIME implementacije.
Biblioteka cilja .NET 8.0 ili noviji i nema izvorne ovisnosti, što je čini prikladnom za Windows, Linux, macOS, Docker kontejnere i serverless funkcije. Za dodatne značajke i komercijalnu podršku, pogledajte Aspose.Email for .NET.
CfbReader.FromFile(), CfbReader.FromStream() ili new CfbReader(data).IterStorages(), IterStreams(), IterChildren() i IterTree().ResolvePath(names) kako biste pronašli određeni tok po lancu imena.CfbDocument i serijalizirajte ih u bajtove ili datoteku putem CfbWriter.ToBytes() ili CfbWriter.WriteFile().CfbStorage i CfbStream čvorove bilo kojem čvoru pohrane prije serijalizacije..msg datoteke — izravan pristup CFB omogućuje forenzički pregled i popravak.MsgReader.FromFile() ili MsgReader.FromStream() i pristupite osnovnim MAPI tokovima svojstava, zapisima primatelja i podskladištima privitaka.MsgDocument pomoću MsgWriter.ToBytes() ili MsgWriter.WriteFile().MsgStorage, MsgStream i MsgStorage.FindStream().MsgStorage.FindStream() i MsgStorage.FindStorage() za pronalaženje imenovanih pod-unosa..msg datoteka iz direktorija arhiva i izdvajanje metapodataka ili privitaka..msg datoteke i isporučite ih Outlook‑baziranim sustavima za poštu.MapiMessage.Create(subject, body), postavi SenderName, SenderEmailAddress i HtmlBody.To, Cc i Bcc primatelje putem AddRecipient() s adresom e‑pošte i prikaznim imenom.AddAttachment() ili izravno konstruirajte MapiAttachment objekte s Filename, MimeType, ContentId i Data.message.Save() ili message.Save(stream) i ponovo učitaj s MapiMessage.FromFile() ili MapiMessage.FromStream().message.Attachments i spremi svaki attachment.Data na disk.message.Subject, message.Body, message.SenderEmailAddress i message.Recipients bez COM automatizacije..eml datoteku (RFC 5322 / MIME) u potpuni MapiMessage objekt putem MapiMessage.LoadFromEml(stream).MapiMessage natrag u MIME format s message.SaveToEml() ili message.SaveToEml(stream)..eml i .msg datoteka u jedinstveni format..eml fiksure u testovima i provjerite da preživljavaju MSG round-trip bez gubitka podataka.Otvorite Outlook MSG datoteku iz toka i ispišite predmet — nije potreban 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);
Izradite potpunu e‑mail poruku s pošiljateljem, primateljem i privitkom, a zatim je spremite u MSG datoteku.
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);
Učitajte standardnu .eml datoteku i spremite je kao Outlook .msg datoteku koristeći ugrađeni MIME parser.
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);