การสร้างและบันทึกไฟล์ MSG

Aspose.Email รองรับการสร้างไฟล์ Outlook message (MSG) บทความนี้อธิบายวิธีทำ:

  • สร้างข้อความ MSG.
  • สร้างข้อความ MSG พร้อมไฟล์แนบ.
  • สร้างข้อความ MSG พร้อมเนื้อหา RTF.
  • บันทึกข้อความเป็นแบบร่าง.
  • ทำงานกับการบีบอัดเนื้อหา.

การสร้างและบันทึก Outlook Messages

คลาส MailMessage มีเมธอด Save() ที่สามารถบันทึกไฟล์ Outlook MSG ไปยังดิสก์หรือสตรีมได้ โค้ดตัวอย่างด้านล่างสร้างอินสแตนซ์ของคลาส MailMessage ตั้งค่าคุณสมบัติ เช่น from, to, subject และ body เมธอด Save() รับชื่อไฟล์เป็นอาร์กิวเมนต์ นอกจากนี้ข้อความ Outlook สามารถสร้างด้วยเนื้อหา RTF ที่ถูกบีบอัดโดยใช้ MapiConversionOptions เพื่อเริ่มต้น สร้างแอปพลิเคชัน Windows ใหม่และเพิ่มการอ้างอิงไปยังไลบรารี Aspose.Email dll ในโปรเจค.

  1. สร้างอินสแตนซ์ใหม่ของคลาส MailMessage แล้วตั้งค่าคุณสมบัติ From, To, Subject และ Body.
  2. เรียกเมธอด FromMailMessage ของคลาส MailMessage ที่รับอ็อบเจกต์ประเภท MailMessage เมธอด FromMailMessage() จะทำการแปลง MailMessage ให้เป็น MailMessage (MSG).
  3. เรียกเมธอด MapiMessage.Save() เพื่อบันทึกไฟล์ MSG.

เขียนโค้ดต่อไปนี้ในเหตุการณ์คลิกของปุ่มควบคุมในแอปพลิเคชัน Windows.

สร้างไฟล์ MSG พร้อมไฟล์แนบ

ในตัวอย่างข้างต้น เราได้สร้างไฟล์ MSG ง่าย ๆ Aspose.Email ยังสนับสนุนการบันทึกไฟล์ข้อความพร้อมไฟล์แนบทั้งหมดที่ต้องทำคือเพิ่มไฟล์แนบเข้าไปในอินสแตนซ์ MailMessage โดยเรียกเมธอด Add() ของคอลเลกชัน MailMessage.Attachments เพิ่ม ListBox ไปยังฟอร์มที่สร้างขึ้นและเพิ่มสองปุ่ม หนึ่งปุ่มสำหรับเพิ่มและอีกหนึ่งปุ่มสำหรับลบไฟล์แนบ แอปพลิเคชันที่เพิ่มไฟล์แนบทำงานดังนี้:

  1. เมื่อคลิกปุ่ม Add Attachment จะปรากฏ Open File Dialog เพื่อช่วยให้ผู้ใช้เรียกดูและเลือกไฟล์แนบ.
  2. เมื่อไฟล์ถูกเลือก เส้นทางเต็มจะถูกเพิ่มในรายการ.
  3. เมื่อไฟล์ MSG ถูกสร้าง เส้นทางไฟล์แนบจะถูกดึงจากรายการและเพิ่มเข้าไปในคอลเลกชัน MailMessage.Attachments.

เขียนโค้ดต่อไปนี้ในเหตุการณ์คลิกของปุ่ม Add Attachment.

เพิ่มโค้ดสำหรับการเพิ่มไฟล์แนบเข้าไปในอินสแตนซ์ MailMessage โค้ดสุดท้ายของฟังก์ชัน Write Msg เขียนตามด้านล่างนี้.

สร้างไฟล์ MSG พร้อมเนื้อหา RTF

คุณสามารถสร้างไฟล์ Outlook Message (MSG) ที่มีเนื้อหา rich text (RTF) ด้วย Aspose.Email ได้ ส่วนหัว RTF รองรับการจัดรูปแบบข้อความ สร้างโดยตั้งค่าคุณสมบัติ MailMessage.HtmlBody เมื่อคุณแปลงอินสแตนซ์ MailMessage เป็นอินสแตนซ์ MailMessage อีกครั้ง เนื้อหา HTML จะถูกแปลงเป็น RTF ด้วยวิธีนี้การจัดรูปแบบของเนื้อหาอีเมลจะถูกเก็บไว้.

ตัวอย่างต่อไปนี้สร้างไฟล์ MSG พร้อมเนื้อหา RTF มีหัวข้อหนึ่งรายการพร้อมการจัดรูปแบบตัวหนาและขีดเส้นใต้ในส่วน HTML การจัดรูปแบบนี้จะคงไว้เมื่อ HTML ถูกแปลงเป็น RTF.

บันทึกข้อความในสถานะแบบร่าง

อีเมลจะถูกบันทึกเป็นฉบับร่างเมื่อมีการเริ่มแก้ไขแต่ต้องการกลับมาจบภายหลัง Aspose.Email รองรับการบันทึกข้อความอีเมลในสถานะร่างโดยตั้งค่าแฟล็กของข้อความ ด้านล่างเป็นตัวอย่างโค้ดเพื่อบันทึก Outlook email (MSG) เป็นฉบับร่าง.

ผลกระทบของการบีบอัดเนื้อหา

วิธีการบีบอัดเนื้อหา RTF สามารถใช้เพื่อสร้างไฟล์ MSG ขนาดเล็กลงได้ แต่จะทำให้ความเร็วช้าลง หากต้องการสร้างข้อความที่เร็วขึ้น ให้ตั้งค่าแฟล็กเป็น false แฟล็กนี้ส่งผลต่อ PST ที่สร้างขึ้น: ไฟล์ MSG ขนาดเล็กทำให้ PST เล็กลงและไฟล์ MSG ขนาดใหญ่ทำให้การสร้าง PST ช้าลง.