3
NSString * urlCached = URL.CacheImageURL;
NSURL * url = [NSURL URLWithString:urlCached];
NSData * data=[NSData dataWithContentsOfURL:url];

ほとんどの URL で問題なく動作します。ただし、URL に http://google.com/Hello World.htm のようにスペースが含まれている場合は機能しません。

そのような URL にはどうすればよいですか?

4

2 に答える 2

5

URL 内で無効な文字をパーセント エスケープすることができます。

NSURL *url = [NSURL URLWithString:
    [urlCached stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];

これは簡単ですが、常に正しいとは限りません。有効な URL 特殊文字 ( %&?:) もエスケープするには、関数を使用しCFURLCreateStringByAddingPercentEscapes()ます。

于 2013-05-02T06:00:13.917 に答える
1

URL をエンコードします... スペースの代わりに %20 を使用します。参考:http ://www.w3schools.com/tags/ref_urlencode.asp

于 2013-05-02T05:59:59.080 に答える