Sample code for 30+ languages & platforms
Objective-C

Set a MIME Body from Transfer-Encoded Text

See more MIME Examples

Demonstrates the Chilkat Mime.SetBodyFromEncoded method, which sets the body from already transfer-encoded text. The first argument is the encoding (base64 or quoted-printable) and the second is the encoded text.

Background: Sometimes you already hold content in its encoded form — a Base64 string from a database or another API — and re-decoding just to have Chilkat re-encode it is wasteful. This method stores the encoded text as-is and records the matching transfer encoding, so the body is correct without a needless round trip. Only the standard reversible encodings, Base64 and quoted-printable, are accepted.

Chilkat Objective-C Downloads

Objective-C
#import <CkoMime.h>
#import <NSString.h>

BOOL success = NO;

//  Demonstrates the Mime.SetBodyFromEncoded method, which sets the body from already transfer-
//  encoded text.  The 1st argument is the encoding ("base64" or "quoted-printable") and the 2nd is
//  the encoded text.

CkoMime *mime = [[CkoMime alloc] init];

mime.ContentType = @"text/plain";

//  The body is provided already Base64-encoded; Chilkat stores it without re-encoding.
NSString *base64Body = @"SGVsbG8sIHRoaXMgaXMgdGhlIGJvZHku";
success = [mime SetBodyFromEncoded: @"base64" str: base64Body];
if (success == NO) {
    NSLog(@"%@",mime.LastErrorText);
    return;
}

//  The decoded body is the original text.
NSString *decoded = [mime GetBodyDecoded];
if (mime.LastMethodSuccess == NO) {
    NSLog(@"%@",mime.LastErrorText);
    return;
}

NSLog(@"%@",decoded);