Sample code for 30+ languages & platforms
C++

Count the Attachments in an Email

See more Email Object Examples

Demonstrates the read-only Chilkat Email.NumAttachments property, which is the number of ordinary attachments in the email. Attachment indexes are zero-based. Related resources inside a multipart/related enclosure are counted separately by NumRelatedItems, and embedded message/rfc822 emails by NumAttachedMessages. This example adds two attachments and prints the count.

Background: An "attachment" is a MIME part meant to be saved or opened as a separate file, as opposed to being displayed as the message body. Chilkat decides whether a part is an attachment by weighing its MIME structure, content type, and Content-Disposition together — so a part can count as an attachment even without an explicit Content-Disposition: attachment header. Note that if an email was downloaded from an IMAP server without its attachment data, this property reflects only what is actually present in the object.

Chilkat C++ Downloads

C++
#include <CkEmail.h>

void ChilkatSample(void)
    {
    //  Demonstrates the read-only Email.NumAttachments property, which is the number
    //  of ordinary attachments contained in the email.  Attachment indexes are zero-based.

    CkEmail email;
    email.put_Subject("Email with attachments");
    email.put_Body("Two files are attached.");

    //  Add two string attachments.
    email.AddStringAttachment("readme.txt","This is the first attachment.");
    email.AddStringAttachment("notes.txt","This is the second attachment.");

    std::cout << "NumAttachments = " << email.get_NumAttachments() << "\r\n";
    }