การโหลดและแยกวิเคราะห์ไฟล์ MSG
ส่วนนี้อธิบายวิธีโหลดและแยกวิเคราะห์ไฟล์ข้อความ Microsoft Outlook (.msg) API ของ Aspose.Email ให้ MapiMessage คลาสสำหรับโหลดไฟล์ MSG ด้วยฟังก์ชันการโหลดแบบสถิติต่าง ๆ สำหรับสถานการณ์ที่แตกต่าง ตัวอย่างโค้ดต่อไปนี้แสดงวิธีโหลดไฟล์ MSG จากไฟล์หรือจากสตรีม.
ลองใช้ดู!
แยกไฟล์อีเมลออนไลน์ได้ฟรี Aspose.Email Parser App.
โหลดไฟล์ MSG จากดิสก์
โค้ดส่วนต่อไปนี้แสดงวิธีโหลดไฟล์ MSG จากดิสก์:
from aspose.email.mapi import MapiMessage
# Create an instance of MapiMessage from file
msg = MapiMessage.load("message.msg")
# Get subject
print("Subject: " + msg.subject)
# Get from address
print("From: " + msg.sender_email_address)
# Get body
print("Body: " + msg.body)
# Get recipients information
recipients = ", ".join([r.email_address for r in msg.recipients])
print("Recipients: " + recipients)
# Get attachments
for att in msg.attachments:
print(att.file_name)
print(att.display_name)
โหลดไฟล์ MSG จากสตรีม
โค้ดส่วนต่อไปนี้แสดงวิธีโหลดไฟล์ MSG จากสตรีม:
from aspose.email.mapi import MapiMessage
import io
# Read the file into a byte array
file_path = "message.msg"
with open(file_path, "rb") as file:
bytes_data = file.read()
# Create a memory stream from the byte array
stream = io.BytesIO(bytes_data)
stream.seek(0)
# Create an instance of MapiMessage from the stream
msg = MapiMessage.load(stream)
# Get subject
print("Subject: " + msg.subject)
# Get from address
print("From: " + msg.sender_email_address)
# Get body
print("Body: " + msg.body)
แปลง EML เป็น MSG พร้อมคงรูปแบบ EML ที่ฝังอยู่
ไฟล์ EML สามารถโหลดเข้าไปใน MapiMessage คลาสโดยการสร้าง MailMessage อ็อบเจ็กต์และส่งผ่านไปยัง MapiMessage.from_mail_message เมธอด หากไฟล์ EML มีไฟล์ฝังอยู่ ให้ใช้ MapiConversionOptions.preserve_embedded_message_format เพื่อคงรูปแบบของไฟล์ที่ฝังไว้ โค้ดด้านล่างแสดงวิธีโหลดไฟล์ EML เข้า MapiMessage พร้อมคงรูปแบบของไฟล์ EML ที่ฝัง.
โค้ดส่วนต่อไปนี้แสดงวิธีแปลงไฟล์ EML เป็นไฟล์ MSG โดยคงรูปแบบข้อความฝังไว้:
from aspose.email import MailMessage, EmlLoadOptions
from aspose.email.mapi import MapiMessage, MapiConversionOptions, OutlookMessageFormat
eml_file = "message.eml"
# Load the EML file
eml_options = EmlLoadOptions()
eml = MailMessage.load(eml_file, eml_options)
# Create MapiConversionOptions
conversion_options = MapiConversionOptions()
conversion_options.format = OutlookMessageFormat.UNICODE
# Preserve Embedded Message Format
conversion_options.preserve_embedded_message_format = True
# Convert EML to MSG with options
msg = MapiMessage.from_mail_message(eml, conversion_options)