Sample code for 30+ languages & platforms
Objective-C

Compress and Decompress a String

See more Compression Examples

Demonstrates how to compress and decompress a string.

Chilkat Objective-C Downloads

Objective-C
#import <CkoStringBuilder.h>
#import <CkoCompression.h>
#import <NSString.h>

BOOL success = NO;

// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

CkoStringBuilder *sb = [[CkoStringBuilder alloc] init];

int i;
for (i = 1; i <= 20; i++) {
    [sb Append: @"This is the original uncompressed string.\r\n"];
}

CkoCompression *compress = [[CkoCompression alloc] init];
compress.Algorithm = @"deflate";
// Indicate that the utf-8 byte representation of the string should be compressed.
compress.Charset = @"utf-8";

NSData compressedBytes;
compressedBytes = [compress CompressString: [sb GetAsString]];

// If the compressed data is desired in string format, then get the base64 representation of the bytes.
compress.EncodingMode = @"base64";
NSString *compressedBase64 = [compress CompressStringENC: [sb GetAsString]];
NSLog(@"%@%@",@"Compressed Bytes as Base64: ",compressedBase64);

// Now decompress...
NSString *decompressedString = [compress DecompressString: compressedBytes];
NSLog(@"%@",@"The original string after decompressing from binary compressed data:");
NSLog(@"%@",decompressedString);

// To decompress from Base64...
compress.EncodingMode = @"base64";
decompressedString = [compress DecompressStringENC: compressedBase64];
NSLog(@"%@",@"The original string after decompressing from Base64:");
NSLog(@"%@",decompressedString);