关于ios:如何在日语中将NSData转换为NSString

How to convert NSData to NSString in Japanese

当我将nsstring转换为nsdata时,在从nsdata转换为nsstring之后

1
2
3
NSString *input = @"ステータス";
NSData *output = [NSData dataWithBytes:[input UTF8String] length:[input length]];
NSString *output2 = [[NSString alloc] initWithData:output encoding:NSUTF8StringEncoding];

输出2为零。如果输入是字母字符,则可以。


正确的转换是

1
NSData* output = [input dataUsingEncoding:NSUTF8StringEncoding];

代码的问题在于[input length]给出的是Unicode字符数,而不是UTF-8字节数。