(IOS)字符串encode编码(编码url字符串不成功的问题)

// 我们一般用这个方法处理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;

}

你可能感兴趣的:((IOS)字符串encode编码(编码url字符串不成功的问题))