E-maily jsou primárním zdrojem komunikace přes internet. Můžete se ocitnout ve scénářích, kdy chcete, aby vaše aplikace četly soubory EML a MSG a přidaly jejich obsah do nějakého souboru nebo s nimi provedly nějakou jinou operaci. Za tímto účelem vás tento článek naučí číst e-mailové zprávy pomocí C++.
- C++ API pro čtení e-mailových zpráv
- Čtení e-mailových zpráv pomocí C++
- Extrahujte informace o záhlaví z e-mailových zpráv
- Dekódování hodnot záhlaví e-mailových zpráv
- Získejte bezplatnou licenci
C++ API pro čtení e-mailových zpráv
Aspose.Email for C++ je nativní knihovna C++ pro vytváření, manipulaci a odesílání e-mailů bez nutnosti instalace Microsoft Outlook. API také podporuje čtení e-mailových souborů EML a MSG. Rozhraní API můžete nainstalovat buď prostřednictvím NuGet, nebo si jej stáhnout přímo ze sekce Downloads.
PM> Install-Package Aspose.Email.Cpp
Čtení e-mailových zpráv pomocí C++
Následují kroky ke čtení e-mailových zpráv.
- Načtěte e-mailový soubor pomocí třídy MailMessage.
- Přečtěte si obsah e-mailu pomocí MailMessage->getFrom(), MailMessage->getTo(), MailMessage->getSubject(), MailMessage->getBody( ) atd. metody.
Následuje ukázkový kód pro čtení e-mailových zpráv pomocí C++.
// Vytvořte instanci MailMessage načtením souboru EML
System::SharedPtr<MailMessage> message = MailMessage::Load(u"SourceDirectory\\Message.eml", System::MakeObject<EmlLoadOptions>());
// Získejte informace o odesílateli
System::Console::WriteLine(u"From:");
System::Console::WriteLine(message->get_From());
// Získejte informace o příjemcích
System::Console::WriteLine(u"To:");
System::Console::WriteLine(message->get_To());
// Získejte předmět
System::Console::WriteLine(u"Subject:");
System::Console::WriteLine(message->get_Subject());
// Získejte tělo HTML
System::Console::WriteLine(u"HtmlBody:");
System::Console::WriteLine(message->get_HtmlBody());
// Získejte tělo textu
System::Console::WriteLine(u"TextBody:");
System::Console::WriteLine(message->get_Body());
Extrahujte informace o záhlaví z e-mailových zpráv
Následují kroky k extrahování informací záhlaví z e-mailových zpráv.
- Načtěte e-mailový soubor pomocí třídy MailMessage.
- Získejte enumerátor záhlaví pomocí metody MailMessage->getHeaders()->GetEnumerator().
- Projděte záhlaví a načtěte záhlaví pomocí metody MailMessage->getHeaders()->Get (int32t index).
Následuje ukázkový kód pro extrahování informací záhlaví z e-mailových zpráv pomocí C++.
// Vytvořte instanci MailMessage načtením souboru EML
System::SharedPtr<MailMessage> message = MailMessage::Load(u"SourceDirectory\\Message.eml", System::MakeObject<EmlLoadOptions>());
// Vytiskněte všechna záhlaví
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++));
}
}
Dekódování hodnot záhlaví e-mailových zpráv
Následují kroky k dekódování hodnot záhlaví v e-mailových zprávách.
- Načtěte e-mailový soubor pomocí třídy MailMessage.
- Dekódujte hodnotu hlavičky pomocí metody MailMessage->getHeaders()->GetDecodedValue (System::String name).
Následuje ukázkový kód pro dekódování hodnot záhlaví v e-mailových zprávách pomocí C++.
// Vytvořte instanci MailMessage načtením souboru EML
System::SharedPtr<MailMessage> message = MailMessage::Load(u"SourceDirectory\\Message.eml", System::MakeObject<EmlLoadOptions>());
// Získejte dekódovanou hodnotu z hlavičky
System::String decodedValue = message->get_Headers()->GetDecodedValue(u"Thread-Topic");
// Vytiskněte hodnotu
System::Console::WriteLine(decodedValue);
Získejte bezplatnou licenci
Rozhraní API můžete vyzkoušet bez omezení hodnocení tím, že požádáte o bezplatnou dočasnou licenci.
Živá ukázka
Závěr
V tomto článku jste se naučili číst e-mailové zprávy pomocí C++. Konkrétně jste se naučili číst obsah e-mailu a informace v záhlaví. Také jste viděli, jak dekódovat hodnoty záhlaví pomocí Aspose.Email for C++ API. Kromě čtení e-mailových zpráv poskytuje API mnohem více funkcí pro práci s e-maily. Rozhraní API můžete podrobně prozkoumat na oficiální dokumentaci. Pokud máte nějaké dotazy, neváhejte nás kontaktovat na našem bezplatném fóru podpory.