بارگذاری، مشاهده و تجزیه فایل MSG

این موضوع توضیح می‌دهد چگونه یک فایل پیام Microsoft Outlook (*.msg) را بارگذاری کنید. این MapiMessage کلاس برای بارگذاری فایل‌های MSG استفاده می‌شود و چندین تابع بارگذاری استاتیک برای سناریوهای مختلف فراهم می‌کند. قطعه کد زیر نشان می‌دهد چگونه فایل‌های MSG را از فایل یا از جریان (stream) بارگذاری کنید.

بارگذاری فایل‌های MSG

قطعه کد زیر نشان می‌دهد چگونه فایل‌های MSG را بارگذاری کنید.

from aspose.email.mapi import MapiMessage

# Create an instance of MapiMessage from file
msg = MapiMessage.from_file("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)

بارگذاری از جریان

قطعه کد زیر نشان می‌دهد چگونه فایل را از جریان (stream) بارگذاری کنید.

from aspose.email.mapi import MapiMessage
import io

# Read the file into a byte array
file_path = dir_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.from_stream(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 شامل فایل‌های EML توکار باشد، از MapiConversionOptions.PreserveEmbeddedMessageFormat برای حفظ قالب فایل‌های EML توکار استفاده کنید. قطعه کد زیر نشان می‌دهد چگونه فایل‌های EML را به MapiMessage بارگذاری کنید در حالی که قالب فایل‌های EML توکار حفظ می‌شود.

from aspose.email import MailMessage, EmlLoadOptions
from aspose.email.mapi import MapiMessage, MapiConversionOptions, OutlookMessageFormat

eml_file = dir_path + "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)