iOS開發 字串中帶中文的注意!!!
阿新 • • 發佈:2018-11-12
說一下我自己遇到的問題吧,歡迎評論增加!
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];