如何正确编码一些文本

时间:2013-01-05 16:50:28

标签: iphone objective-c ios utf-8 nsstring

我有一些我需要解决的文字格式问题。我在下面的NSString中显示了一些奇怪的字符

原始字符串:

NSString *descriptionStringPreFormatted = [item objectForKey:@"title"];

格式化字符串:

    NSString *descriptionLabelStringUTF8 = [descriptionStringPreFormatted stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

    NSLog(@"descriptionStringPreFormatted is %@", descriptionStringPreFormatted);
    NSLog(@"descriptionLabelStringUTF8 is %@", descriptionLabelStringUTF8);

这里的输出是否相同,无论我是否使用UTF8编码。

输出:

2013-01-05 16:44:51.807 descriptionStringPreFormatted is £144.99... 

2013-01-05 16:44:51.810 descriptionLabelStringUTF8 is £144.99...

1 个答案:

答案 0 :(得分:1)

我认为您正在从Web服务接收字典“item”。因此尝试使用NSUTF8StringEncoding从webservice解码响应字符串。     NSString * str = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding]; 这里“responseData”是来自Web服务的原始数据。