Edited at

NSURLに日本語を含める

More than 5 years have passed since last update.

NSURLに日本語を含めるには

NSURL* url = [NSURL URLWithString:

[@"日本語含む" stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];

stringByAddingPercentEscapesUsingEncodingは、エスケープをあまりしてくれないようで、

URIEncodeを確実に行う場合は、CFURLCreateStringByAddingPercentEscapesを使うのが定石になっているようです。

NSString* escapedUrl

= (NSString*) CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,
(CFStringRef)str,
NULL,
(CFStringRef)@"!*'();:@&=+$,/?%#[]",
kCFStringEncodingUTF8);