2011年5月27日金曜日

URL encode

NSString メソッドで、


URL encode(%hex変換)するのが、
- (NSString *)stringByAddingPercentEscapesUsingEncoding:(NSStringEncoding)enc;


URL decodeするのが、
- (NSString *)stringByReplacingPercentEscapesUsingEncoding:(NSStringEncoding)enc;

しかし
正解はこれ
NSString* encodeURIComponent(NSString* s) {
    return [((NSString*)CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,
        (CFStringRef)s,
        NULL,
        (CFStringRef)@"!*'();:@&=+$,/?%#[]",
        kCFStringEncodingUTF8)) autorelease];
}

0 件のコメント: