Caricamento, Visualizzazione e Analisi di file MSG

Questo argomento spiega come caricare un file di messaggio Microsoft Outlook (*.msg). Il MapiMessage la classe è usata per caricare file MSG e fornisce diverse funzioni statiche di caricamento per diversi scenari. Il frammento di codice seguente mostra come caricare file MSG da file o da stream.

Caricamento di File MSG

Il frammento di codice seguente mostra come caricare file 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)

Caricamento da stream

Il frammento di codice seguente mostra come caricare un file da 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)

Conversione da EML a MSG preservando il formato EML incorporato

I file EML possono essere caricati in MapiMessage classe istanziando un MailMessage oggetto e passarlo al metodo MapiMessage.from_mail_message. Se il file EML contiene file EML incorporati, usare MapiConversionOptions.PreserveEmbeddedMessageFormat per mantenere il formato dei file EML incorporati. Il frammento di codice sotto mostra come caricare file EML in MapiMessage preservando il formato dei file EML incorporati.

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)