Sample code for 30+ languages & platforms
Objective-C

Get an Attachment's Bytes into a BinData

See more Email Object Examples

Demonstrates the Chilkat Email.GetAttachmentBd method, which copies an attachment's binary data into a BinData object. The first attachment is at index 0. This example adds an attachment and copies its bytes into a BinData, printing the byte count.

Background: This is the safe, binary way to extract an attachment — the counterpart to the text-oriented GetAttachmentString. Because attachments are often binary (PDFs, images, archives), copying the raw bytes into a BinData preserves them exactly, ready to write to a file, hash, or pass to another API without any charset conversion that could corrupt the data.

Chilkat Objective-C Downloads

Objective-C
#import <CkoEmail.h>
#import <CkoBinData.h>

BOOL success = NO;

//  Demonstrates the GetAttachmentBd method, which copies an attachment's binary data into a
//  BinData object.  The first attachment is at index 0.

CkoEmail *email = [[CkoEmail alloc] init];
email.Subject = @"GetAttachmentBd example";

[email AddStringAttachment: @"notes.txt" str: @"Some notes stored in the attachment."];

//  Copy the first attachment's binary data into a BinData object.
CkoBinData *bd = [[CkoBinData alloc] init];
success = [email GetAttachmentBd: [NSNumber numberWithInt: 0] binData: bd];
if (success == NO) {
    NSLog(@"%@",email.LastErrorText);
    return true;
}

NSLog(@"%@%d",@"Attachment size (bytes) = ",[bd.NumBytes intValue]);