编码和解码
// decode
NSString *string = [[NSString alloc] initWithData:utf8Data
encoding:NSUTF8StringEncoding];
// encode
NSData *utf8Data = [string dataUsingEncoding:NSUTF8StringEncoding];
一些支持的编码是:
NSASCIIStringEncoding
NSUTF8StringEncoding
NSUTF16StringEncoding
(==NSUnicodeStringEncoding
)
请注意,utf8Data.bytes
不包含终止空字符,这对于 C 字符串是必需的。如果你需要 C 字符串,请使用 UTF8String
:
const char *cString = [string UTF8String];
printf("%s", cString);