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 <C_CkEmail.h>

void ChilkatSample(void)
    {
    HCkEmail email;

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

    email = CkEmail_Create();
    CkEmail_putSubject(email,"Email with attachments");
    CkEmail_putBody(email,"Two files are attached.");

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

    printf("NumAttachments = %d\n",CkEmail_getNumAttachments(email));


    CkEmail_Dispose(email);

    }