Leggi i messaggi di posta elettronica utilizzando C++

Le e-mail sono una fonte primaria di comunicazione su Internet. Potresti trovarti in scenari in cui desideri che le tue applicazioni leggano i file EML e MSG e aggiungano il loro contenuto a qualche file o eseguano altre operazioni su di essi. A tal fine, questo articolo ti insegnerà come leggere i messaggi di posta elettronica utilizzando C++.

API C++ per la lettura di messaggi di posta elettronica

Aspose.Email per C++ è una libreria C++ nativa per la creazione, la manipolazione e l’invio di e-mail senza richiedere l’installazione di Microsoft Outlook. L’API supporta anche la lettura di file di posta elettronica EML e MSG. Puoi installare l’API tramite NuGet o scaricarla direttamente dalla sezione Download.

PM> Install-Package Aspose.Email.Cpp

Leggi i messaggi di posta elettronica utilizzando C++

Di seguito sono riportati i passaggi per leggere i messaggi di posta elettronica.

Di seguito è riportato il codice di esempio per leggere i messaggi di posta elettronica utilizzando C++.

// Crea un'istanza MailMessage caricando un file EML
System::SharedPtr<MailMessage> message = MailMessage::Load(u"SourceDirectory\\Message.eml", System::MakeObject<EmlLoadOptions>());

// Ottieni le informazioni sul mittente
System::Console::WriteLine(u"From:");
System::Console::WriteLine(message->get_From());

// Ottieni le informazioni sui destinatari
System::Console::WriteLine(u"To:");
System::Console::WriteLine(message->get_To());

// Ottieni il soggetto
System::Console::WriteLine(u"Subject:");
System::Console::WriteLine(message->get_Subject());

// Ottieni il corpo HTML
System::Console::WriteLine(u"HtmlBody:");
System::Console::WriteLine(message->get_HtmlBody());

// Ottieni il corpo del testo
System::Console::WriteLine(u"TextBody:");
System::Console::WriteLine(message->get_Body());
Output generato dal codice di esempio

Output generato dal codice di esempio

Estrai le informazioni di intestazione dai messaggi di posta elettronica

Di seguito sono riportati i passaggi per estrarre le informazioni di intestazione dai messaggi di posta elettronica.

Di seguito è riportato il codice di esempio per estrarre le informazioni di intestazione dai messaggi di posta elettronica utilizzando C++.

// Crea un'istanza MailMessage caricando un file EML
System::SharedPtr<MailMessage> message = MailMessage::Load(u"SourceDirectory\\Message.eml", System::MakeObject<EmlLoadOptions>());

// Stampa tutte le intestazioni
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++));
    }
}

Decodifica i valori dell’intestazione del messaggio e-mail

Di seguito sono riportati i passaggi per decodificare i valori di intestazione nei messaggi di posta elettronica.

Di seguito è riportato il codice di esempio per decodificare i valori di intestazione nei messaggi di posta elettronica utilizzando C++.

// Crea un'istanza MailMessage caricando un file EML
System::SharedPtr<MailMessage> message = MailMessage::Load(u"SourceDirectory\\Message.eml", System::MakeObject<EmlLoadOptions>());

// Ottieni il valore decodificato dall'intestazione
System::String decodedValue = message->get_Headers()->GetDecodedValue(u"Thread-Topic");

// Stampa il valore
System::Console::WriteLine(decodedValue);

Ottieni una licenza gratuita

Puoi provare l’API senza limitazioni di valutazione richiedendo una licenza temporanea gratuita.

Dimostrazione dal vivo

Conclusione

In questo articolo hai imparato a leggere i messaggi di posta elettronica usando C++. In particolare, hai imparato a leggere il contenuto dell’e-mail e le informazioni sull’intestazione. Hai anche visto come decodificare i valori di intestazione usando Aspose.Email per l’API C++. Oltre a leggere i messaggi e-mail, l’API offre molte più funzionalità per lavorare con le e-mail. Puoi esplorare l’API in dettaglio visitando la documentazione ufficiale. In caso di domande, non esitare a contattarci sul nostro forum di supporto gratuito.

Guarda anche