1. Termékek
  2.   Aspose.Email
  3.   Aspose.Email FOSS for .NET

Aspose.Email FOSS .NET számára

Olvassa, hozza létre és dolgozza fel az Outlook MSG fájlokat, CFB konténereket és EML üzeneteket a .NET segítségével — ingyenes és nyílt forráskódú, Microsoft Outlook függőség nélkül.

Nyílt forráskódú .NET könyvtár MSG, CFB és EML fájlokhoz

Aspose.Email FOSS for .NET egy MIT-licencű, függőségmentes C# könyvtár a Microsoft Outlook .msg fájlok, Compound File Binary (CFB) konténerek és EML üzenetek kezeléséhez. Adj hozzá egyetlen NuGet csomagot, és azonnal elkezdhetsz e‑mail üzeneteket olvasni, létrehozni és feldolgozni anélkül, hogy a Microsoft Outlookot vagy bármilyen tulajdonosi futtatókörnyezetet telepítenél.

A könyvtár két szintű hozzáférést biztosít. Alacsony szinten a CfbReader és a CfbWriter teljes irányítást ad a CFB bináris konténerek felett — bejárja a könyvtárbejegyzéseket, olvas és ír tárolócsomópontokat és adatfolyamokat, valamint megvizsgálja a nyers szektor elrendezést. A MsgReader és a MsgWriter kezeli a MSG formátumot a CFB tetején, kitetve a MAPI tulajdonság adatfolyamokat, a címzett táblákat és a melléklet al‑tárolókat. Magas szinten a MapiMessage lehetővé teszi új üzenetek létrehozását a semmiből, a tárgy, a szöveg, a feladó és a címzettek olvasását, a mellékletek kezelését, valamint az MSG és az EML formátum közötti konvertálást egy beépített MIME megvalósítással.

A könyvtár a .NET 8.0 vagy újabb verzióra céloz, és nincs natív függősége, így alkalmas Windows, Linux, macOS, Docker konténerek és szerver nélküli függvények számára. További funkciókért és kereskedelmi támogatásért lásd a Aspose.Email for .NET.

CFB konténer olvasása és írása

  • CFB fájlok megnyitása: Töltsön be meglévő CFB konténereket fájlútról, folyamról vagy bájttömbből a CfbReader.FromFile(), CfbReader.FromStream() vagy new CfbReader(data) segítségével.
  • A könyvtárfa bejárása: Iterálja a tárolókat, adatfolyamokat és gyermekeket a IterStorages(), IterStreams(), IterChildren() és IterTree() használatával.
  • Útvonalak feloldása: Navigáljon a beágyazott tárolási hierarchiákban a ResolvePath(names) segítségével, hogy egy adott adatfolyamot találjon meg névláncolattal.
  • CFB tárolók írása: Építs CFB dokumentumokat programozottan a CfbDocument segítségével, és sorosítsd bájtokba vagy fájlba a CfbWriter.ToBytes() vagy a CfbWriter.WriteFile() használatával.
  • Tárolók és adatfolyamok hozzáadása: Csatolja a CfbStorage és CfbStream csomópontokat bármely tárolócsomóponthoz a sorosítás előtt.

Ahol a CFB hozzáférés használatos

  • MSG fájl ellenőrzése: A CFB az Outlook .msg fájlok konténerformátuma — a közvetlen CFB hozzáférés lehetővé teszi a kriminalisztikai ellenőrzést és javítást.
  • Egyedi bináris formátumok: Bármely örökölt alkalmazás, amely CFB-t használ adat tárolásra, olvasható vagy írható COM függőség nélkül.
  • Adat-helyreállítás: Bejárja a teljes könyvtárfát, és kinyeri a nyers adatfolyam bájtjait a sérült vagy nem szabványos CFB fájlokból.
  • Bináris körutazás tesztelése: Szerializáljon egy dokumentumot bájtokba, majd töltse be újra, hogy ellenőrizze a veszteségmentes szerializációt automatizált tesztekben.

MSG fájl olvasása és írása

  • MSG fájlok olvasása: Nyissa meg az Outlook MSG fájlokat a MsgReader.FromFile() vagy a MsgReader.FromStream() segítségével, és érje el az alapul szolgáló MAPI tulajdonságáramokat, címzettrekordokat és melléklet al‑tárolókat.
  • MSG fájlok írása: Készítsen MSG fájlokat egy MsgDocument segítségével MsgWriter.ToBytes() vagy MsgWriter.WriteFile() használatával.
  • Low-level MAPI access: Olvassa a felső szintű tulajdonságáramokat, a névvel ellátott tulajdonságokat és a melléklet adatokat a MsgStorage, MsgStream és MsgStorage.FindStream() segítségével.
  • MSG tároló navigáció: Használja a MsgStorage.FindStream() és a MsgStorage.FindStorage() elemeket a név szerint megnevezett albejegyzések megtalálásához.

Ahol az MSG feldolgozást használják

  • Email archival pipelines: Tömeges olvasás .msg fájlokból az archív könyvtárakból és metaadatok vagy mellékletek kinyerése.
  • Migrációs eszközök: Konvertálja a MSG gyűjteményeket szabványos formátumokra a nem Outlook rendszerekbe történő importáláshoz.
  • Jogi felderítés: Nyers MAPI tulajdonságfolyamok elemzése az összes üzenetmező, beleértve a nem szabványos tulajdonságokat, kinyerésére.
  • Automatizált jelentéskézbesítés: Programozottan készítsen .msg fájlokat, és juttassa el őket Outlook-alapú levelezőrendszerekhez.

Magas szintű üzenet API

  • Üzenetek létrehozása: Építsen egy teljes e-mailt a MapiMessage.Create(subject, body) használatával, állítsa be a SenderName, SenderEmailAddress és HtmlBody értékeket.
  • Címzettek hozzáadása: Csatolja a To, Cc és Bcc címzetteket a AddRecipient() segítségével e-mail címmel és megjelenített névvel.
  • Mellékletek kezelése: Adjon hozzá fájl- és adatfolyam-mellékleteket a AddAttachment() használatával, vagy közvetlenül hozza létre a MapiAttachment objektumokat a Filename, MimeType, ContentId és Data segítségével.
  • Mentés és újratöltés: Sorosítsa a message.Save() vagy message.Save(stream) segítségével, és töltse újra a MapiMessage.FromFile() vagy MapiMessage.FromStream() használatával.

Ahol a magas szintű API-t használják

  • Automatikus e-mail generálás: Generáljon több ezer személyre szabott MSG fájlt adatrekordokból kötegelt feladatokban.
  • Teszt rögzítő létrehozása: Építsen ismert jó MSG fájlokat előre meghatározott tartalommal az integrációs tesztkészletekhez.
  • Melléklet kinyerése: Töltsön be egy MSG fájlt, iteráljon message.Attachments, és mentse el minden attachment.Data-t a lemezen.
  • Tulajdonság ellenőrzése: Hozzáférés a message.Subject, message.Body, message.SenderEmailAddress és message.Recipients elemekhez COM automatizáció nélkül.

EML és MIME konverzió

  • EML betöltése a MapiMessage-be: Egy szabványos .eml fájl (RFC 5322 / MIME) elemzése egy teljes MapiMessage objektummá a MapiMessage.LoadFromEml(stream) segítségével.
  • MapiMessage mentése EML-ként: Sorosíts egy MapiMessage vissza MIME formátumba a message.SaveToEml() vagy message.SaveToEml(stream) segítségével.
  • Round-trip fidelity: Tárgy, törzs, HTML törzs, feladó, címzettek és mellékletek mind megmaradnak az EML → MSG → EML körutazások során.
  • Nincs külső MIME elemző: Az EML feldolgozást a könyvtár natívan valósítja meg — nincs szükség a System.Net.Mail függőségre.

Ahol az EML konverziót használják

  • Formátumátvitel: Fogadjon e-maileket EML formátumban a levelezőszerverekről, és konvertálja MSG formátumba az Outlook-kompatibilis tároláshoz.
  • Szabványoknak való megfelelés: Konvertálja a tulajdonosi MSG fájlokat szabványos MIME formátumba, hogy bármely levélátviteli rendszerhez szállíthatók legyenek.
  • Archív normalizálás: Normalizáljon egy vegyes archívumot, amely .eml és .msg fájlokat tartalmaz, egyetlen formátumba.
  • Tesztelési munkafolyamatok: Generáljon .eml fixture-et a tesztekben, és ellenőrizze, hogy azok túlélnek egy MSG körúton adatvesztés nélkül.

Tárgy olvasása egy MSG fájlból

Nyisson meg egy Outlook MSG fájlt egy adatfolyamból, és írja ki a tárgyat — Microsoft Outlook nélkül.

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

MSG üzenet létrehozása és mentése

Készíts egy teljes e‑mailt feladóval, címzettel és melléklettel, majd írd ki egy MSG fájlba.

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

EML konvertálása MSG-re

Töltsön be egy szabványos .eml fájlt, és mentse Outlook .msg fájlként a beépített MIME elemző segítségével.

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

Támogatás és tanulási források

 Magyar