Sample code for 30+ languages & platforms
Xojo Plugin

Parsing a Multipart/Digest Email

See more Email Object Examples

This example demonstrates how to parse a multipart/digest email. An email parsed by this sample could have a MIME structure as follows:
multipart/mixed
    text/plain
    text/plain
    multipart/digest
        message/rfc822
        message/rfc822
        message/rfc822
        message/rfc822
        message/rfc822
        message/rfc822
        message/rfc822
        message/rfc822
        message/rfc822
        message/rfc822
        message/rfc822
        message/rfc822
        message/rfc822
        message/rfc822
        message/rfc822
        message/rfc822
        message/rfc822
        message/rfc822
        message/rfc822
        message/rfc822
        message/rfc822
    text/plain

Chilkat Xojo Plugin Downloads

Xojo Plugin
Dim success As Boolean
success = False

Dim emlPath As String
emlPath = "qa_data/eml/multipart_digest.eml"

Dim email As New Chilkat.Email

// For this example, we'll load the email from a .eml.
// The email could alternatively be loaded as a result of downloading from an IMAP or POP3 server..

success = email.LoadEml(emlPath)
If (success = False) Then
    System.DebugLog(email.LastErrorText)
    Return
End If

Dim numDigests As Int32
numDigests = email.NumDigests
System.DebugLog("num digests = " + Str(numDigests))

Dim eDigest As New Chilkat.Email
Dim i As Int32
i = 0
While i < numDigests
    success = email.GetDigestEmail(i,eDigest)
    System.DebugLog(Str(i) + ":" + eDigest.FromAddress + ", " + eDigest.Subject)
    Dim m As String
    m = eDigest.GetHeaderField("Message")
    If (eDigest.LastMethodSuccess = True) Then
        System.DebugLog("    Message = " + m)
    End If

    i = i + 1
Wend