凡是用get方法的,url里含中文的,都需要調用上面的函數進行編碼。要不然會被當成二進制截斷。
//URL編碼
+(NSString*)urlEncode:(NSString *)str
{
int length = [str lengthOfBytesUsingEncoding:NSUTF8StringEncoding];
const char* buffer = [str UTF8String];
NSMutableString* returndata = [NSMutableString string];
for(int i=0;i<length;i++)
{
unsigned char ch = (unsigned char)buffer;
[returndata appendFormat:@"%%%02x",ch];
}
return returndata;
}
//URL解碼
+(NSString*)urlDecode:(NSString*)str
{
return [str stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
}