// 我们一般用这个方法处理stringByAddingPercentEscapesUsingEncoding但是这个方法好想不会处理/和&这种特殊符号,这种情况就需要用下边这个方法处理
@implementationNSString (NSString_Extended)
- (NSString*)urlencode {
NSMutableString *output = [NSMutableString string];
const unsigned char *source = (const unsigned char *)[self UTF8String];
intsourceLen =strlen((constchar*)source);
for(inti =0; i < sourceLen; ++i) {
constunsignedcharthisChar = source[i];
if(thisChar ==' '){
[outputappendString:@"+"];
}elseif(thisChar =='.'|| thisChar =='-'|| thisChar =='_'|| thisChar =='~'||
(thisChar >='a'&& thisChar <='z') ||
(thisChar >='A'&& thisChar <='Z') ||
(thisChar >='0'&& thisChar <='9')) {
[outputappendFormat:@"%c", thisChar];
}else{
[outputappendFormat:@"%%%02X", thisChar];
}
}
returnoutput;
}