Cómo convertir el correo electrónico de Outlook a Word usando C#

En este sencillo tutorial, aprenderemos cómo convertir Outlook Email a Word usando C# junto con pasos detallados para configurar el entorno. Observará que para convertir un EML a DOCX se puede usar una API basada en C# y puede usar este ejemplo en cualquiera de los sistemas operativos comúnmente disponibles como Windows, Linux o macOS.

Pasos para convertir el correo electrónico de Outlook a DOCX usando C#

  1. Configure su aplicación para instalar las bibliotecas Aspose.Email y Aspose.Word desde el administrador de paquetes NuGet
  2. Cree una instancia del objeto de clase MailMessage para cargar el archivo de correo electrónico en formato MSG o EML de origen
  3. Guarde el archivo de correo electrónico cargado (EML/MSG) en una transmisión en formato MHTML
  4. Crea una instancia de LoadFormat en MHTML y crea una instancia del objeto de clase Document para cargar el MHTML intermedio creado en el paso anterior.
  5. Al usar el método Guardar en C# EML a Word, se realiza la conversión

Mediante el uso de los pasos anteriores en C# Correo electrónico a Word se desarrolla la aplicación de conversión. Cargaremos el archivo MSG o EML de origen desde el disco utilizando el objeto de la clase MailMessage como punto de partida, y luego guardaremos el archivo de correo electrónico en una secuencia en formato MHTML. Finalmente, cargaremos el MHTML intermedio desde una secuencia utilizando el objeto de clase Documento y convertiremos el correo electrónico a DOCX.

Código para convertir el correo electrónico de Outlook a DOCX usando 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");
}
}
}
}

En el ejemplo anterior, para convertir EML a Word C# se usa con la ayuda de una interfaz API simple y pasos claramente definidos. El código anterior se puede utilizar para archivos de correo electrónico en formatos EML y MSG. También se puede guardar el MHTML cargado en imágenes o salidas PDF.

En este tema, aprendimos cómo convertir el correo electrónico de Outlook a Docx usando la API basada en C#. Si desea convertir MBOX a PST, consulte el artículo sobre cómo convertir MBOX a archivo PST en C#.

 Español