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