nSSTRINGを取得してNSURLに変換するのに問題があるitem.imageは、xmlを介して取得する画像のURLを保持します
NSString *urlString = [NSString stringWithFormat:@"%@", item.image];
NSURL *url = [NSURL URLWithString:urlString];
NSLog(@"string> %@ ", urlString);
NSLog(@"url> %@ ", url);
2011-06-23 11:18:49.610 Test[10126:207] string> http://www.harlemfur.com/images/Dog_Olive.jpg
2011-06-23 11:18:49.611 Test[10126:207] url> (null)
また、私が試した場合:
NSString *urlString = [NSString stringWithFormat:@"%@", item.image];
NSURL *url = [NSURL fileURLWithPath :urlString];
2011-06-23 11:22:08.063 Test[10199:207] string> http://www.harlemfur.com/images/Dog_Olive.jpg
2011-06-23 11:22:08.064 Test[10199:207] url> %0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20http://www.harlemfur.com/images/Dog_Olive.jpg%0A%20%20%20%20%20%20%20%20%20%20%20%20 -- /
URL
からNSString
を作成するときは、最初にエンコードすることを忘れないでください。
NSString *urlString = [NSString stringWithFormat:@"%@", item.image];
NSURL *url = [NSURL URLWithString:[urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
IOS 9.0以上使用の場合
NSURL *url = [NSURL URLWithString:[urlString stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLQueryAllowedCharacterSet]]];
NSLogで印刷するURLを取得したい場合は、次のように使用します。
NSLog(@"url> %@ ", [url absoluteString]);
item.image
にはURLが含まれるだけでなく、改行とスペースで始まります。最初にそれらを削除し、あなたは大丈夫です。
Swiftの場合:
NSURL(fileURLWithPath: item.image!)