Wiadomości e-mail są głównym źródłem komunikacji w Internecie. Możesz znaleźć się w sytuacji, w której chcesz, aby Twoje aplikacje odczytywały pliki EML i MSG i dodawały ich zawartość do jakiegoś pliku lub wykonywały na nich inne operacje. W tym celu w tym artykule dowiesz się, jak czytać wiadomości e-mail za pomocą C++.
- C++ API do czytania wiadomości e-mail
- Czytaj wiadomości e-mail za pomocą C++
- Wyodrębnij informacje nagłówka z wiadomości e-mail
- Dekoduj wartości nagłówków wiadomości e-mail
- Uzyskaj bezpłatną licencję
C++ API do czytania wiadomości e-mail
Aspose.Email for C++ to natywna biblioteka C++ do tworzenia, manipulowania i wysyłania wiadomości e-mail bez konieczności instalowania programu Microsoft Outlook. Interfejs API obsługuje również odczytywanie plików e-mail EML i MSG. Możesz zainstalować API przez NuGet lub pobrać bezpośrednio z sekcji Downloads.
PM> Install-Package Aspose.Email.Cpp
Czytaj wiadomości e-mail za pomocą C++
Poniżej przedstawiono kroki, aby przeczytać wiadomości e-mail.
- Załaduj plik e-mail, używając klasy MailMessage.
- Przeczytaj treść wiadomości e-mail za pomocą funkcji MailMessage->getFrom(), MailMessage->getTo(), MailMessage->getSubject(), MailMessage->getBody( ) itp. metody.
Poniżej znajduje się przykładowy kod do odczytywania wiadomości e-mail przy użyciu języka C++.
// Utwórz instancję MailMessage, ładując plik EML
System::SharedPtr<MailMessage> message = MailMessage::Load(u"SourceDirectory\\Message.eml", System::MakeObject<EmlLoadOptions>());
// Uzyskaj informacje o nadawcy
System::Console::WriteLine(u"From:");
System::Console::WriteLine(message->get_From());
// Uzyskaj informacje o odbiorcach
System::Console::WriteLine(u"To:");
System::Console::WriteLine(message->get_To());
// Zdobądź temat
System::Console::WriteLine(u"Subject:");
System::Console::WriteLine(message->get_Subject());
// Pobierz treść HTML
System::Console::WriteLine(u"HtmlBody:");
System::Console::WriteLine(message->get_HtmlBody());
// Pobierz treść tekstu
System::Console::WriteLine(u"TextBody:");
System::Console::WriteLine(message->get_Body());
Wyodrębnij informacje nagłówka z wiadomości e-mail
Poniżej przedstawiono kroki, aby wyodrębnić informacje nagłówka z wiadomości e-mail.
- Załaduj plik e-mail, używając klasy MailMessage.
- Pobierz moduł wyliczający nagłówek za pomocą metody MailMessage->getHeaders()->GetEnumerator().
- Przejdź przez nagłówki i pobierz nagłówek za pomocą metody MailMessage->getHeaders()->Get (indeks int32t).
Poniżej przedstawiono przykładowy kod służący do wyodrębniania informacji nagłówka z wiadomości e-mail przy użyciu języka C++.
// Utwórz instancję MailMessage, ładując plik EML
System::SharedPtr<MailMessage> message = MailMessage::Load(u"SourceDirectory\\Message.eml", System::MakeObject<EmlLoadOptions>());
// Wydrukuj wszystkie nagłówki
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++));
}
}
Dekoduj wartości nagłówków wiadomości e-mail
Poniżej przedstawiono kroki dekodowania wartości nagłówków w wiadomościach e-mail.
- Załaduj plik e-mail, używając klasy MailMessage.
- Dekoduj wartość nagłówka za pomocą metody MailMessage->getHeaders()->GetDecodedValue (System::String name).
Poniżej znajduje się przykładowy kod służący do dekodowania wartości nagłówków w wiadomościach e-mail przy użyciu języka C++.
// Utwórz instancję MailMessage, ładując plik EML
System::SharedPtr<MailMessage> message = MailMessage::Load(u"SourceDirectory\\Message.eml", System::MakeObject<EmlLoadOptions>());
// Pobierz zdekodowaną wartość z nagłówka
System::String decodedValue = message->get_Headers()->GetDecodedValue(u"Thread-Topic");
// Wydrukuj wartość
System::Console::WriteLine(decodedValue);
Uzyskaj bezpłatną licencję
Możesz wypróbować interfejs API bez ograniczeń ewaluacyjnych, prosząc o bezpłatną licencję tymczasową.
Demo na żywo
Wniosek
W tym artykule nauczyłeś się czytać wiadomości e-mail przy użyciu języka C++. W szczególności nauczyłeś się czytać treść wiadomości e-mail i informacje w nagłówku. Widziałeś również, jak dekodować wartości nagłówków za pomocą Aspose.Email for C++ API. Oprócz czytania wiadomości e-mail interfejs API zapewnia znacznie więcej funkcji do pracy z wiadomościami e-mail. Możesz szczegółowo zapoznać się z interfejsem API, odwiedzając oficjalną dokumentację. Jeśli masz jakiekolwiek pytania, skontaktuj się z nami na naszym bezpłatnym forum pomocy technicznej.