Sample code for 30+ languages & platforms
Objective-C

Demonstrate Binary Data Encoding Methods

Demonstrates binary data encoding methods.

Note: This example requires Chilkat v9.5.0.64 or later.

Chilkat Objective-C Downloads

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

CkoBinData *binData = [[CkoBinData alloc] init];

//  Append 10 bytes: 00, 01, 02, 03, 04, 05, 06, 07, 08, 09
[binData AppendEncoded: @"00010203040506070809" encoding: @"hex"];

//  Show that binData contains 10 bytes.
NSLog(@"%@%d",@"num bytes = ",[binData.NumBytes intValue]);

//  Get as base64
NSLog(@"%@%@",@"base64: ",[binData GetEncoded: @"base64"]);

//  Get a chunk of the binary data.
//  The 1st byte is at index 0.
//  The output should be "02030405"
int offset = 2;
int numBytes = 4;
NSLog(@"%@%@",@"chunk: ",[binData GetEncodedChunk: [NSNumber numberWithInt: offset] numBytes: [NSNumber numberWithInt: numBytes] encoding: @"hex"]);

//  Copy the bytes to a StringBuilder using the base64url encoding
CkoStringBuilder *sb = [[CkoStringBuilder alloc] init];
[binData GetEncodedSb: @"base64url" sb: sb];
NSLog(@"%@%@",@"base64url: ",[sb GetAsString]);

//  Remove a chunk from the binary data
offset = 2;
numBytes = 4;
[binData RemoveChunk: [NSNumber numberWithInt: offset] numBytes: [NSNumber numberWithInt: numBytes]];
//  The bytes remaining are 00,01,06,07,08,and 09
NSLog(@"%@%@",@"after removing chunk: ",[binData GetEncoded: @"hex"]);