Sample code for 30+ languages & platforms
Java Requires Chilkat v11.0.0+

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 Java Downloads

Chilkat2 Java
import com.chilkatsoft.chilkat2.ChilkatException;
import com.chilkatsoft.chilkat2.Email;

public class ChilkatExample {

    public static void main(String[] args) {
        String emlPath = "qa_data/eml/multipart_digest.eml";

        Email email = new 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..

        try {
            email.loadEml(emlPath);
        } catch (ChilkatException e) {
            System.out.println(e.getLastErrorText());
            return;
        }

        int numDigests = email.getNumDigests();
        System.out.println("num digests = " + numDigests);

        Email eDigest = new Email();
        int i = 0;
        while (i < numDigests) {
            email.getDigestEmail(i, eDigest);
            System.out.println(i + ":" + eDigest.getFromAddress() + ", " + eDigest.getSubject());
            String m = eDigest.getHeaderField("Message");
            if (m != null) {
                System.out.println("    Message = " + m);
            }

            i = i + 1;
        }
    }
}