(Objective-C) StringBuilder Encode Charset
Demonstrates the importance of the charset argument when encoding/decoding.
#import <NSString.h>
#import <CkoStringBuilder.h>
NSString *s = @"é é é";
CkoStringBuilder *sb = [[CkoStringBuilder alloc] init];
[sb Append: s];
[sb EntityDecode];
// The string now contains: "é é é"
NSLog(@"%@",[sb GetAsString]);
// If encoded to hex using the iso-8859-1 charset,
// each é char is represented in 1 byte.
// Output: E920E920E9
NSLog(@"%@",[sb GetEncoded: @"hex" charset: @"iso-8859-1"]);
// If encoded to hex using the utf-8 charset,
// each é char is represented in 2 bytes.
// Output: C3A920C3A920C3A9
NSLog(@"%@",[sb GetEncoded: @"hex" charset: @"utf-8"]);
// Here's utf-16
// Output: E9002000E9002000E900
NSLog(@"%@",[sb GetEncoded: @"hex" charset: @"utf-16"]);
// utf-32
// Output: E900000020000000E900000020000000E9000000
NSLog(@"%@",[sb GetEncoded: @"hex" charset: @"utf-32"]);
|