I have this line of code to convert NSString to NSData:
NSData *data = [NSData dataWithBytes:[message UTF8String] length:[message lengthOfBytesUsingEncoding:NSUTF8StringEncoding]];
How do I do this in Unicode instead of UTF8? My message may contain cyrillic characters or diacritical marks.
First off, you should use
dataUsingEncoding:
instead of going throughUTF8String
. You only useUTF8String
when you need a C string in that encoding.Then, for “Unicode” (specifically, UTF-16), just pass
NSUnicodeStringEncoding
instead ofNSUTF8StringEncoding
in yourdataUsingEncoding:
message.