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

Aspose.Email FOSS for .NET

Baca, cipta, dan proses fail Outlook MSG, kontena CFB, dan mesej EML dari .NET — percuma dan sumber terbuka, tanpa kebergantungan Microsoft Outlook.

Perpustakaan .NET Sumber Terbuka untuk Fail MSG, CFB dan EML

FOSS for .NET adalah perpustakaan C # MIT yang dilisensikan, bebas daripada ketergantungan untuk bekerja dengan fail Microsoft Outlook .msg , bekas Kompaun Fail Binar (CFB), dan mesej EML. Tambah satu pakej NuGet dan segera mula membaca, membuat, dan memproses mesej e-mel tanpa memasang Microsoft Outlook atau runtime milik mana pun.

Perpustakaan menyediakan dua tahap akses. Pada peringkat rendah, CfbReader dan CfbWriter memberikan kawalan penuh ke atas bekas binari CFB entri direktori melintasi, membaca dan menulis nod penyimpanan dan data aliran, dan memeriksa susun atur sektor mentah. MsgReader and MsgWriter mengendalikan format MSG di atas CF B, mendedahkan aliran harta MAPI, jadual penerima, serta sub-pembekalan lampiran. Di peringkat tinggi,MapiMessage membolehkan anda membuat mesej baru dari awal, baca, badan, pengirim, subjek, & menerima, mengurus lampuran, and menukar antara format EML dan MS G melalui pelaksanaan terbina dalam MIME .

Perpustakaan ini disasarkan pada .NET 8.0 atau lebih baru dan tidak mempunyai ketergantungan asli, menjadikannya sesuai untuk Windows, Linux, macOS, bekas Docker, dan fungsi tanpa pelayan. Untuk ciri tambahan dan sokongan komersial, lihat Aspose.Email for .NET.

Kontainer CFB Baca dan Tulis

  • ** Buka fail CFB:** Muat naik bekas CF B yang sedia ada dari laluan fail, aliran, atau array byte melalui CfbReader.FromFile(), CfbReader.FromStream() , atau new CfbReader(data).
  • Lintas di pokok direktori: Iterate storages, aliran, dan anak-anak menggunakan IterStorages(), IterStreams() , IterChildren() dan IterTree().
  • ** Menyelesaikan laluan:** Navigasi hierarki penyimpanan bergelung dengan ResolvePath(names) untuk mencari aliran tertentu oleh rantaian nama.
  • ** Menulis bekas CFB:** Membina dokumen CF B secara berprograman dengan CfbDocument dan menyerialisasikan ke bait atau fail melalui CfbWriter.ToBytes() atau CfbWriter.WriteFile().
  • Tambah storages dan aliran: Menyambung CfbStorage dan CfbStream nod ke sebarang node penyimpanan sebelum serialization.

Di mana Akses CFB Digunakan

  • ** Pemeriksaan fail MSG:** CFB adalah format bekas untuk Outlook .msg fail akses langsung CF B membolehkan pemeriksaan forensik dan pembaikan.
  • ** Format binari tersuai:** Mana-mana aplikasi lama yang menggunakan CFB untuk penyimpanan data boleh dibaca atau ditulis tanpa kebergantungan COM.
  • ** Pemulihan data:** Pergi melalui pokok direktori penuh dan mengekstrak byte aliran mentah dari fail CFB yang rosak atau tidak standard.
  • Pengujian perjalanan balik binari: Serialkan dokumen ke byte dan muat semula untuk mengesahkan serialisasi tanpa kerugian dalam ujian automatik.

Fail MSG Baca dan Tulis

  • Membaca fail MSG: Buka fail Outlook MS G dengan MsgReader.FromFile() atau MsgReader.FromStream() dan akses aliran sifat MAPI yang mendasari, rekod penerima, dan penyimpanan kecil lampiran.
  • ** Menulis fail MSG:** Menghasilkan fail Msg dari MsgDocument dengan MsgWriter.ToBytes() atau MsgWriter.WriteFile().
  • ** Akses MAPI peringkat rendah:** Baca aliran sifat tahap atas, sifat yang dinamakan, dan data lampiran melalui MsgStorage, MsgStream, and MsgStorage.FindStream().
  • ** Navigasi penyimpanan MSG:** Gunakan MsgStorage.FindStream() dan MsgStorage.FindStorage() untuk mencari sub-entri yang dinamakan.

Di Mana Pengolahan MSG Digunakan

  • ** E-mel paip arkib:** Bulk baca .msg fail dari direktori arsip dan ekstrak metadata atau lampiran.
  • ** Alat pemindahan:** Menukar koleksi MSG ke format standard untuk import ke sistem bukan Outlook.
  • ** Penemuan undang-undang:** Parse aliran sifat MAPI mentah untuk mengekstrak semua medan mesej termasuk sifat bukan standard.
  • ** Penghantaran laporan automatik:** Membina fail .msg secara program dan menghantarnya ke sistem mel berasaskan Outlook.

API Mesej Tingkat Tinggi

  • ** Buat mesej:** Membina e-mel lengkap dengan MapiMessage.Create(subject, body), set SenderName, SenderEmailAddress dan HtmlBody.
  • Tambah penerima: Menambahkan To, Cc dan Bcc penerimaan melalui AddRecipient() dengan alamat e-mel dan nama paparan.
  • ** Mengurus lampiran:** Tambah fail dan litar lampuran dengan AddAttachment() atau membina objek MapiAttachment secara langsung denganFilename, MimeType , ContentId dan Data.
  • ** Simpan dan muat semula:** Serial dengan message.Save() atau message.Save(stream) dan memuat ulang denganMapiMessage.FromFile() or MapiMessage.FromStream().

Di mana API Tingkat Tinggi Digunakan

  • ** Penjanaan e-mel automatik:** Menjana beribu-ribu fail MSG peribadi dari rekod data dalam kerja batch.
  • ** Penciptaan alat ujian:** Membina fail MSG yang terkenal dengan kandungan yang dapat diramalkan untuk kumpulan ujian integrasi.
  • ** Pengekstrakan lampiran:** Muat naik fail MSG, mengulangi message.Attachments, dan simpan setiap attachment.Data ke cakera.
  • ** Pemeriksaan harta:** Akses message.Subject, message.Body , message.SenderEmailAddress dan message.Recipients tanpa automasi COM.

EML dan MIME Konversi

  • ** Load EML ke dalam MapiMessage:** Parse standard .eml fail (RFC 5322 / MIME) menjadi penuh MapiMessage objek melalui MapiMessage.LoadFromEml(stream).
  • ** Simpan MapiMessage sebagai EML:** Serialkan semula MapiMessage ke format MIME dengan message.SaveToEml() atau message.SaveToEml(stream).
  • Ketekapan perjalanan: Subjek, badan, tubuh HTML, pengirim, penerima dan lampiran semuanya dipelihara melalui EML → MSG → EM L-perjalanan.
  • ** Tiada pemindai MIME luaran:** Pemindaian EML dilaksanakan secara asli dalam perpustakaan tiada bergantung System.Net.Mail yang diperlukan.

Di mana penukaran EML digunakan

  • Pembatas format: Terima e-mel sebagai EML dari pelayan mel dan menukar ke MSG untuk penyimpanan yang serasi dengan Outlook.
  • ** Pematuhan piawaian:** Menukar fail MSG milik kepada MIME standard untuk penghantaran ke mana-mana angkutan pos.
  • ** Normalizasi arkib:** Normalisasi arsip campuran .eml dan .msg fail ke satu format.
  • ** Percubaan aliran kerja:** Generate .eml perkakasan dalam ujian dan mengesahkan mereka bertahan MSG perjalanan tanpa kehilangan data.

Membaca Subjek dari Fail MSG

Buka fail Outlook MSG dari aliran dan cetak subjek tiada Microsoft Outlook diperlukan.

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 dan Simpan Mesej MSG

Buat e-mel lengkap dengan pengirim, penerima dan lampiran, kemudian tulis ke fail 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);

Menukar EML kepada MSG

Muat naik fail .eml standard dan simpan sebagai Outlook file .msg menggunakan built-in 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);
  

Sokongan dan Sumber Pembelajaran

 Bahasa Melayu