我试过这段代码
const char *jsonString = [challange.description UTF8String];
NSData *jsonData = [NSData dataWithBytes:jsonString length:strlen(jsonString)];
NSString *goodMsg = [[NSString alloc] initWithData:jsonData encoding:NSNonLossyASCIIStringEncoding];
问题是当我用笑脸转换一些像德语“test-ö”这样的特殊字符时,它不会从我在上面链接中发布的上面的代码进行转换。如果我使用相同的英语和笑脸,它的工作正常。如果有人有同样的问题请帮帮我。
答案 0 :(得分:1)
我认为问题在于您从NSString
获取UTF-8字符串,然后使用未指定的编码将其转换为NSData
(我怀疑它是UTF-8 ,这样就行了,然后使用NSString
创建另一个NSNonLossyASCIIStringEncoding
对象。
避免发布所有代码,只需直接使用challenge.description
。