C++를 사용하여 이메일 메시지 읽기

이메일은 인터넷을 통한 커뮤니케이션의 주요 소스입니다. 애플리케이션이 EMLMSG 파일을 읽고 해당 내용을 일부 파일에 추가하거나 해당 파일에 대해 다른 작업을 수행하도록 하려는 시나리오에 직면할 수 있습니다. 이를 위해 이 기사에서는 C++를 사용하여 이메일 메시지를 읽는 방법을 설명합니다.

이메일 메시지 읽기를 위한 C++ API

Aspose.Email for C++는 Microsoft Outlook을 설치하지 않고도 이메일을 생성, 조작 및 전송하기 위한 기본 C++ 라이브러리입니다. API는 EML 및 MSG 이메일 파일 읽기도 지원합니다. NuGet을 통해 API를 설치하거나 다운로드 섹션에서 직접 다운로드할 수 있습니다.

PM> Install-Package Aspose.Email.Cpp

C++를 사용하여 이메일 메시지 읽기

다음은 이메일 메시지를 읽는 단계입니다.

다음은 C++를 사용하여 이메일 메시지를 읽는 샘플 코드입니다.

// EML 파일을 로드하여 MailMessage 인스턴스 생성
System::SharedPtr<MailMessage> message = MailMessage::Load(u"SourceDirectory\\Message.eml", System::MakeObject<EmlLoadOptions>());

// 발신자 정보 가져오기
System::Console::WriteLine(u"From:");
System::Console::WriteLine(message->get_From());

// 받는 사람 정보 가져오기
System::Console::WriteLine(u"To:");
System::Console::WriteLine(message->get_To());

// 주제 가져오기
System::Console::WriteLine(u"Subject:");
System::Console::WriteLine(message->get_Subject());

// HTML 본문 가져오기
System::Console::WriteLine(u"HtmlBody:");
System::Console::WriteLine(message->get_HtmlBody());

// 텍스트 본문 가져오기
System::Console::WriteLine(u"TextBody:");
System::Console::WriteLine(message->get_Body());
샘플 코드에 의해 생성된 출력

샘플 코드에 의해 생성된 출력

이메일 메시지에서 헤더 정보 추출

다음은 이메일 메시지에서 헤더 정보를 추출하는 단계입니다.

다음은 C++를 사용하여 이메일 메시지에서 헤더 정보를 추출하는 샘플 코드입니다.

// EML 파일을 로드하여 MailMessage 인스턴스 생성
System::SharedPtr<MailMessage> message = MailMessage::Load(u"SourceDirectory\\Message.eml", System::MakeObject<EmlLoadOptions>());

// 모든 헤더 출력
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++));
    }
}

이메일 메시지 헤더 값 디코딩

다음은 이메일 메시지의 헤더 값을 디코딩하는 단계입니다.

다음은 C++를 사용하여 이메일 메시지의 헤더 값을 디코딩하는 샘플 코드입니다.

// EML 파일을 로드하여 MailMessage 인스턴스 생성
System::SharedPtr<MailMessage> message = MailMessage::Load(u"SourceDirectory\\Message.eml", System::MakeObject<EmlLoadOptions>());

// 헤더에서 디코딩된 값 가져오기
System::String decodedValue = message->get_Headers()->GetDecodedValue(u"Thread-Topic");

// 값 인쇄
System::Console::WriteLine(decodedValue);

무료 라이선스 받기

임시 무료 라이선스를 요청하면 평가 제한 없이 API를 사용해 볼 수 있습니다.

라이브 데모

결론

이 기사에서는 C++를 사용하여 이메일 메시지를 읽는 방법을 배웠습니다. 특히 이메일의 내용과 헤더 정보를 읽는 방법을 배웠습니다. 또한 Aspose.Email for C++ API를 사용하여 헤더 값을 디코딩하는 방법도 보았습니다. API는 이메일 메시지를 읽는 것 외에도 이메일 작업을 위한 더 많은 기능을 제공합니다. API에 대한 자세한 내용은 공식 문서에서 확인할 수 있습니다. 질문이 있는 경우 무료 지원 포럼에서 언제든지 문의하십시오.

또한보십시오