1. 程式人生 > >iOS開發 字串中帶中文的注意!!!

iOS開發 字串中帶中文的注意!!!

說一下我自己遇到的問題吧,歡迎評論增加!

1、使用AFNetworking下載檔案,下載連結中包含中文,下載失敗

解決方法:除正常校驗下載連結外,增加一個編碼的過程

NSCharacterSet *characterSet = [NSCharacterSet URLQueryAllowedCharacterSet];
NSString *url = [downloadUrl stringByAddingPercentEncodingWithAllowedCharacters:characterSet];

NSCharacterSet相關的請移步這裡簡書文章

2、字串中的中文是經過編碼的,使用的事GBK編碼,與通用的UTF-8不一致

解決方法:GBK->UTF-8

ios9.0之前

NSStringEncoding enc = CFStringConvertEncodingToNSStringEncoding (kCFStringEncodingGB_18030_2000);
NSString *strA = [address stringByReplacingPercentEscapesUsingEncoding:enc];

ios9.0之後

NSStringEncoding enc = CFStringConvertEncodingToNSStringEncoding (kCFStringEncodingGB_18030_2000);
NSString *strA = [NSString stringWithContentsOfURL:[NSURL URLWithString:address] encoding:enc error:nil];