Sample code for 30+ languages & platforms
Unicode C

Set a MIME Body from a File

See more MIME Examples

Demonstrates the Chilkat Mime.SetBodyFromFile method, which reads a local file and sets it as the body, choosing content headers from the filename extension. The only argument is the file path.

Note: The file paths are relative to the application's current working directory. Absolute paths may also be used. Supply the paths appropriate to your own environment.

Background: This is the one-call way to turn a file into a MIME part: Chilkat reads the bytes and infers the Content-Type and transfer encoding from the extension — .jpg becomes image/jpeg with base64, .txt a text type, and so on. It is the natural building block for adding an attachment, usually followed by setting a Content-Disposition and filename.

Chilkat Unicode C Downloads

Unicode C
#include <C_CkMimeW.h>

void ChilkatSample(void)
    {
    BOOL success;
    HCkMimeW mime;

    success = FALSE;

    //  Demonstrates the Mime.SetBodyFromFile method, which reads a local file and sets it as the body,
    //  choosing content headers based on the filename extension.  The only argument is the file path.

    mime = CkMimeW_Create();

    //  The Content-Type and encoding are set from the ".jpg" extension (image/jpeg, base64).
    success = CkMimeW_SetBodyFromFile(mime,L"qa_data/photo.jpg");
    if (success == FALSE) {
        wprintf(L"%s\n",CkMimeW_lastErrorText(mime));
        CkMimeW_Dispose(mime);
        return;
    }

    wprintf(L"Content-Type: %s\n",CkMimeW_contentType(mime));
    wprintf(L"Encoding: %s\n",CkMimeW_encoding(mime));


    CkMimeW_Dispose(mime);

    }