網(wǎng)絡(luò)請(qǐng)求拼接中文參數(shù),用戶名登陸等很多地方會(huì)用到中文,UTF8編碼顯得頗為重要,但是iOS9之后,我們常用的的方法已經(jīng)廢棄,當(dāng)然了,有廢棄肯定就有新的來代替,在此記錄一下.
1.編碼
NSString*hStr =@"你好啊";
NSString*hString = [hStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSLog(@"hString === %@",hString);
上面這樣寫是會(huì)有警告的,

輸出結(jié)果:
hString === %E4%BD%A0%E5%A5%BD%E5%95%8A
這樣寫就可以了:
NSString*hString = [hStr stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLQueryAllowedCharacterSet]];
結(jié)果是一樣的
hString === %E4%BD%A0%E5%A5%BD%E5%95%8A
2.解碼
NSString*str3 =@"\u5982\u4f55\u8054\u7cfb\u5ba2\u670d\u4eba\u5458\uff1f";
NSString*str5 = [str3 stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSLog(@"str5 ==== %@",str5);
同樣會(huì)有警告;

輸出結(jié)果:
str5 ====如何聯(lián)系客服人員?
下面消除警告,修改為:
NSString*str5 = [str3 stringByRemovingPercentEncoding];
結(jié)果也是一樣的:
str5 ====如何聯(lián)系客服人員?