Pengantar

Aspose.Email FOSS for .NET is a free, open-source C# library that lets you work with Outlook File MSG, Compound File Binary (CFB) container, dan pesan EML langsung di .NET Anda. aplikasi tidak ada Microsoft Outlook, tidak perlu COM interop dan tidak diperlukan perpustakaan asli. Distribusikan sebagai paket NuGet tunggal dan berjalan secara identik pada Windows, Linux, macOS, Docker container, dan fungsi tanpa server.

Perpustakaan memecahkan masalah berulang dalam pekerjaan perusahaan dan integrasi: Outlook .msg file (file) yang diproduksi oleh jutaan pengguna bisnis, tetapi menganalisis mereka tanpa Outlook telah secara historis COM diperlukan otomatisasi atau perpustakaan komersial mahal. Aspose.Email FOSS untuk .NET menyediakan dukungan membaca/menulis penuh untuk MSG, kontainer biner CFB yang mendasari dan format EML/MIME Semua di bawah lisensi MIT tanpa pembatasan penggunaan.

Apakah Anda membangun pipa arsip email, alat migrasi, ekstraktor lampiran, atau generator MSG otomatis, perpustakaan ini memberi Anda akses langsung tingkat rendah ke setiap byte dari format email di samping tingkat tinggi MapiMessage API yang memungkinkan Anda untuk memulai dalam beberapa menit.


Fitur Utama

Membaca File Outlook MSG

Buka apapun. .msg file dari jalur atau aliran dengan MsgReader.FromFile() atau: MsgReader.FromStream(). Akses ke aliran properti MAPI lengkap, catatan penerima dan sub-pembekalan lampiran di tingkat byte mentah melalui MsgStorage dan (b) MsgStream.

using System.IO;
using Aspose.Email.Foss.Msg;
using var stream = File.OpenRead("sample.msg");

var message = MapiMessage.FromStream(stream);
Console.WriteLine(message.Subject);

Buat File MSG dari awal

Membangun email lengkap secara programatis menggunakan MapiMessage.Create().Tetapkan subjek, teks sederhana. body, HTML body , nama pengirim, alamat email pengirimi, waktu pengiriman, dan ID pesan internet, maka menambahkan penerima dengan AddRecipient() dan lampiran dengan AddAttachment().Serial dengan message.Save().

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

Konversi EML menjadi MSG (dan Kembali)

Mengisi standar RFC 5322 .eml file ke dalam sebuah MapiMessage dengan: MapiMessage.LoadFromEml(), lalu simpan sebagai Outlook .msg file atau membalikkan proses dengan MapiMessage.SaveToEml(). MIME built-in parser menyimpan subjek, tubuh, badan HTML, pengirim, penerima dan lampiran melalui EML MSG penuh dan perjalanan.

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

Akses Kontainer CFB Tingkat Rendah

File MSG Outlook dibangun pada format Compound File Binary (CFB) sebuah biner hierarkis Container yang mirip dengan file system. CfbReader mengekspresikan seluruh pohon direktori: iterate storages dan sungai-sungai dengan IterStorages(), IterStreams(), dan IterChildren(), navigasi ke spesifik entri menurut jalur dengan: ResolvePath(), dan membaca byte stream mentah dengan GetStreamData().

CfbWriter memungkinkan Anda untuk membangun dan merilis dokumen CFB dari awal. Buat sebuah CfbDocument, mengikat CfbStorage dan (b) CfbStream node, dan panggilan CfbWriter.ToBytes() atau: CfbWriter.WriteFile() untuk serialisasi.

MAPI Properties and Attachment Access (Pengetahuan dan Akses ke Pemilik MAPI)

Pengelolaan MapiPropertyCollection kelas menyediakan akses properti MAPI yang diketik untuk MSG atau penyimpanan apa pun objek: penggunaan Get(), Set(), Add(), dan Remove() dengan standar CommonMessagePropertyId atau: PropertyTypeCode Nilai enum. Akses metadata lampiran dan data biner melalui MapiAttachment sifat: Filename, MimeType, ContentId, dan Data.


Memulai dengan cepat

Instal paket:

dotnet add package Aspose.Email.FOSS

Baca subjek dari file MSG:

using System.IO;
using Aspose.Email.Foss.Msg;

using var stream = File.OpenRead("sample.msg");
var message = MapiMessage.FromStream(stream);
Console.WriteLine(message.Subject);
Console.WriteLine(message.SenderEmailAddress);
foreach (var recipient in message.Recipients)
    Console.WriteLine($"To: {recipient.EmailAddress}");
foreach (var attachment in message.Attachments)
    Console.WriteLine($"Attachment: {attachment.Filename} ({attachment.MimeType})");

Format yang Didhukung

Format (Inggris)PerpanjanganBacalah.Menulis
Komposisi File Binary.cfb
Pesan Outlook.msg
MIME / EML.eml

Open Source & Lisensi

Aspose.Email FOSS for .NET is released under the Lisensi MIT.Anda dapat menggunakannya secara bebas di proyek pribadi, komersial dan open source tanpa pembatasan penggunaan. Kode sumber adalah tersedia di: github.com/aspose-email-foss/Aspose.Email-FOSS-for-.Net (dalam bahasa Inggris)..


Memulai