อีเมลเป็นแหล่งหลักในการสื่อสารผ่านอินเทอร์เน็ต คุณอาจพบว่าตัวเองอยู่ในสถานการณ์ที่คุณต้องการให้แอปพลิเคชันของคุณอ่านไฟล์ EML และ MSG และเพิ่มเนื้อหาลงในไฟล์บางไฟล์หรือดำเนินการอื่นๆ กับไฟล์เหล่านั้น ด้วยเหตุนี้ บทความนี้จะสอนวิธีอ่านข้อความอีเมลโดยใช้ C++
- C++ API สำหรับอ่านข้อความอีเมล
- อ่านข้อความอีเมลโดยใช้ C ++
- แยกข้อมูลส่วนหัวออกจากข้อความอีเมล
- ถอดรหัสค่าส่วนหัวของข้อความอีเมล
- รับใบอนุญาตฟรี
C++ API สำหรับอ่านข้อความอีเมล
Aspose.Email for C++ คือไลบรารี C++ ดั้งเดิมสำหรับสร้าง จัดการ และส่งอีเมลโดยไม่ต้องติดตั้ง Microsoft Outlook API ยังรองรับการอ่านไฟล์อีเมล EML และ MSG คุณสามารถติดตั้ง API ผ่าน NuGet หรือดาวน์โหลดโดยตรงจากส่วน ดาวน์โหลด
PM> Install-Package Aspose.Email.Cpp
อ่านข้อความอีเมลโดยใช้ C ++
ต่อไปนี้เป็นขั้นตอนในการอ่านข้อความอีเมล
- โหลดไฟล์อีเมลโดยใช้คลาส MailMessage
- อ่านเนื้อหาของอีเมลโดยใช้ MailMessage->getFrom(), MailMessage->getTo(), MailMessage->getSubject(), MailMessage->getBody( ) ฯลฯ วิธีการ
ต่อไปนี้คือโค้ดตัวอย่างสำหรับอ่านข้อความอีเมลโดยใช้ C++
// สร้างอินสแตนซ์ MailMessage โดยโหลดไฟล์ EML
System::SharedPtr<MailMessage> message = MailMessage::Load(u"SourceDirectory\\Message.eml", System::MakeObject<EmlLoadOptions>());
// รับข้อมูลผู้ส่ง
System::Console::WriteLine(u"From:");
System::Console::WriteLine(message->get_From());
// รับข้อมูลผู้รับ
System::Console::WriteLine(u"To:");
System::Console::WriteLine(message->get_To());
// รับเรื่อง
System::Console::WriteLine(u"Subject:");
System::Console::WriteLine(message->get_Subject());
// รับเนื้อหา HTML
System::Console::WriteLine(u"HtmlBody:");
System::Console::WriteLine(message->get_HtmlBody());
// รับเนื้อหาข้อความ
System::Console::WriteLine(u"TextBody:");
System::Console::WriteLine(message->get_Body());
แยกข้อมูลส่วนหัวออกจากข้อความอีเมล
ต่อไปนี้เป็นขั้นตอนในการดึงข้อมูลส่วนหัวจากข้อความอีเมล
- โหลดไฟล์อีเมลโดยใช้คลาส MailMessage
- รับตัวแจงนับส่วนหัวโดยใช้เมธอด MailMessage->getHeaders()->GetEnumerator()
- วนซ้ำส่วนหัวและดึงข้อมูลส่วนหัวโดยใช้เมธอด MailMessage->getHeaders()->Get (int32t index)
ต่อไปนี้คือโค้ดตัวอย่างในการดึงข้อมูลส่วนหัวจากข้อความอีเมลโดยใช้ C++
// สร้างอินสแตนซ์ MailMessage โดยโหลดไฟล์ EML
System::SharedPtr<MailMessage> message = MailMessage::Load(u"SourceDirectory\\Message.eml", System::MakeObject<EmlLoadOptions>());
// พิมพ์ส่วนหัวทั้งหมด
int32_t index = 0;
{
auto header_enumerator = message->get_Headers()->GetEnumerator();
decltype(header_enumerator->get_Current()) header;
while (header_enumerator->MoveNext() && (header = header_enumerator->get_Current(), true))
{
System::Console::Write(header + u" - ");
System::Console::WriteLine(message->get_Headers()->Get(index++));
}
}
ถอดรหัสค่าส่วนหัวของข้อความอีเมล
ต่อไปนี้เป็นขั้นตอนในการถอดรหัสค่าส่วนหัวในข้อความอีเมล
- โหลดไฟล์อีเมลโดยใช้คลาส MailMessage
- ถอดรหัสค่าของส่วนหัวโดยใช้เมธอด MailMessage->getHeaders()->GetDecodedValue (System::String)
ต่อไปนี้คือโค้ดตัวอย่างในการถอดรหัสค่าส่วนหัวในข้อความอีเมลโดยใช้ C++
// สร้างอินสแตนซ์ MailMessage โดยโหลดไฟล์ EML
System::SharedPtr<MailMessage> message = MailMessage::Load(u"SourceDirectory\\Message.eml", System::MakeObject<EmlLoadOptions>());
// รับค่าถอดรหัสจากส่วนหัว
System::String decodedValue = message->get_Headers()->GetDecodedValue(u"Thread-Topic");
// พิมพ์ค่า
System::Console::WriteLine(decodedValue);
รับใบอนุญาตฟรี
คุณสามารถลองใช้ API ได้โดยไม่มีข้อจำกัดในการประเมินโดยขอ ใบอนุญาตชั่วคราวฟรี
การสาธิตสด
บทสรุป
ในบทความนี้ คุณได้เรียนรู้วิธีการอ่านข้อความอีเมลโดยใช้ C++ คุณได้เรียนรู้วิธีอ่านเนื้อหาและข้อมูลส่วนหัวของอีเมลแล้ว คุณได้เห็นวิธีถอดรหัสค่าส่วนหัวโดยใช้ Aspose.Email for C++ API นอกเหนือจากการอ่านข้อความอีเมลแล้ว API ยังมีคุณสมบัติอีกมากมายสำหรับการทำงานกับอีเมล คุณสามารถสำรวจ API โดยละเอียดได้โดยไปที่ เอกสารอย่างเป็นทางการ หากคุณมีคำถามใดๆ โปรดติดต่อเราได้ที่ ฟอรัมสนับสนุนฟรี