ในบทช่วยสอนง่ายๆ นี้ เราจะเรียนรู้วิธี แปลง Outlook Email เป็น Word โดยใช้ C# พร้อมกับขั้นตอนโดยละเอียดในการกำหนดค่าสภาพแวดล้อม คุณจะสังเกตว่าในการแปลง EML เป็น DOCX C# API นั้นสามารถใช้ได้ และคุณสามารถใช้ตัวอย่างนี้ในระบบปฏิบัติการใดๆ ที่มีอยู่ทั่วไป เช่น Windows, Linux หรือ macOS
ขั้นตอนในการแปลงอีเมล Outlook เป็น DOCX โดยใช้ C#
- กำหนดค่าแอปพลิเคชันของคุณเพื่อติดตั้งไลบรารี Aspose.Email และ Aspose.Word จาก NuGet package manager
- สร้างอินสแตนซ์อ็อบเจ็กต์คลาส MailMessage เพื่อโหลดไฟล์อีเมลรูปแบบ MSG หรือ EML ต้นทาง
- บันทึกไฟล์อีเมล (EML/MSG) ที่โหลดในสตรีมเป็นรูปแบบ MHTML
- สร้างอินสแตนซ์ของ LoadFormat เป็น MHTML และอินสแตนซ์อ็อบเจ็กต์คลาส Document เพื่อโหลด MHTML ระดับกลางที่สร้างในขั้นตอนก่อนหน้า
- โดยใช้วิธีการบันทึกในการแปลง C# EML เป็น Word เสร็จแล้ว
โดยใช้ขั้นตอนข้างต้นในแอปพลิเคชันการแปลง C# Email to Word ได้รับการพัฒนา เราจะโหลดไฟล์ MSG หรือ EML ต้นทางจากดิสก์โดยใช้ออบเจกต์คลาส MailMessage เป็นจุดเริ่มต้น จากนั้นจึงตามด้วยการบันทึกไฟล์อีเมลไปยังสตรีมในรูปแบบ MHTML สุดท้าย เราจะโหลด MHTML ระดับกลางจากสตรีมโดยใช้วัตถุคลาส Document และแปลงอีเมลเป็น DOCX
รหัสเพื่อแปลงอีเมล Outlook เป็น DOCX โดยใช้ C
using System.IO; | |
using Aspose.Email; | |
using Aspose.Words; | |
namespace KBEmail | |
{ | |
public class EmlToWord | |
{ | |
public static void ConvertEmailTWord() | |
{ | |
string FilePath = @"C:/TestData/"; | |
// Applying product license to read the MSG file | |
Aspose.Email.License emailLicense = new Aspose.Email.License(); | |
emailLicense.SetLicense(FilePath + "Conholdate.Total.Product.Family.lic"); | |
// Applying the product license to convert MHTML to DOCX | |
Aspose.Words.License wordsLicence = new Aspose.Words.License(); | |
wordsLicence.SetLicense(FilePath + "Conholdate.Total.Product.Family.lic"); | |
using (MemoryStream mhtmlStream = new MemoryStream()) | |
{ | |
// Open the MSG or EML file from the disk | |
MailMessage srcMessage = MailMessage.Load(FilePath + "Message.msg"); | |
// Save email to MHTML | |
srcMessage.Save(mhtmlStream, Aspose.Email.SaveOptions.DefaultMhtml); | |
// Reset the Memory stream position | |
mhtmlStream.Position = 0; | |
// Initialize the LoadOptions to set the LoadFormat to Mhtml | |
Aspose.Words.Loading.LoadOptions loadOptions = new Aspose.Words.Loading.LoadOptions(); | |
loadOptions.LoadFormat = LoadFormat.Mhtml; | |
// Create the Document class object to load the MTHML from MemoryStream | |
Aspose.Words.Document mhtmlDocument = new Aspose.Words.Document(mhtmlStream, loadOptions); | |
// Save the MHTML to DOCX using C# | |
mhtmlDocument.Save(FilePath + "SaveEmailAsDoc.docx"); | |
} | |
} | |
} | |
} |
ในตัวอย่างข้างต้น เพื่อ แปลง EML เป็น Word C# จะใช้โดยใช้อินเทอร์เฟซ API ที่เรียบง่ายและขั้นตอนที่กำหนดไว้อย่างชัดเจน รหัสด้านบนสามารถใช้กับไฟล์อีเมลในรูปแบบ EML และ MSG ท่านสามารถบันทึก MHTML ที่โหลดแล้วไปยังเอาต์พุตรูปภาพหรือ PDF ได้เช่นกัน
ในหัวข้อนี้ เราได้เรียนรู้วิธี แปลงอีเมล Outlook เป็น Docx โดยใช้ API ที่ใช้ C# หากคุณต้องการแปลง MBOX เป็น PST โปรดดูบทความใน วิธีแปลงไฟล์ MBOX เป็น PST ใน C#