ios - 带有笑脸和德语或法语文本的字符串

标签 ios nsstring utf8-decode

我试过这段代码

const char *jsonString = [challange.description UTF8String];
    NSData *jsonData = [NSData dataWithBytes:jsonString length:strlen(jsonString)];
    NSString *goodMsg = [[NSString alloc] initWithData:jsonData encoding:NSNonLossyASCIIStringEncoding];

问题是,当我用笑脸转换一些特殊字符,如德语“test-ö”时,它不是从我在上面链接中发布的上面代码转换而来的。如果我使用相同的英语和笑脸,它工作正常。如果有人遇到同样的问题,请帮助我。

最佳答案

我相信问题是你从 NSString 获取一个 UTF-8 字符串,然后使用未指定的编码将其转换为 NSData(我怀疑它是 UTF) -8,所以没问题),然后使用 NSNonLossyASCIIStringEncoding 创建另一个 NSString 对象。

避免使用您发布的所有代码,直接使用challenge.description

关于ios - 带有笑脸和德语或法语文本的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25010110/

相关文章:

objective-c - objective-c 中的指针值

ios - 图片不是从图库中选择的

ios - 快速更改所选标签栏图标的颜色

iphone - iOS内存从NSString泄漏

iphone: -[CFString release]: 消息发送到已释放的实例

ios - 无法将字符串设置为 URLWithString

iphone - 我使用哪个 NSMergePolicy?

perl - 如何将双反斜杠 PERL QQ 转义字符串解码为 Perl 字符?

ios - 如何将字符串转换为utf8编码?

perl - 如何为 URL 编码西里尔字符然后解码它们?