一般来说,后台接口参数有中文是使用utf-8编码转换的,但是有时候后台就不用,比如使用ISO-8859-1,但是iOS的字符串不能直接使用方法,像utf-8那么方便了,对应编码的枚举并不在NSString这个类里,而是在CFString里。
代码如下:
+ (NSString *)unicode2ISO88591:(NSString *)string {
NSStringEncoding enc = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingISOLatin1);
return [NSString stringWithCString:[string UTF8String] encoding:enc];
}
使用[string UTF8String]是因为需要C格式的字符串,类似的,此方法可以转换其他不能用字符串对象直接转换的编码格式。