2016-09-07 6 views
5

NSURLで文字列置換を行うにはどうすればよいですか? stringByReplacingOccurrencesOfStringを試しましたが、NSStringで動作します。私はNSURLで置き換えます

http://example.com/img1.jpg 

答えて

3

NSURLに画像のURL

http://example.com/image1.jpg 

を交換したい

NSURL *imageURL = [NSURL URLWithString:dataList[indexPath.item][@"image"]]; 
NSData *imageData = [NSData dataWithContentsOfURL:imageURL]; 
UIImage *image = [UIImage imageWithData:imageData]; 

は、あなたがそう

NSURL *imageURL = [NSURL URLWithString:dataList[indexPath.item][@"image"]]; 

NSString *urlString = [imageURL.absoluteString stringByReplacingOccurrencesOfString:@"image" withString:@"img"]; 

imageURL = [NSURL URLWithString:urlString]; 

あなたは可能性がアルのように使用することができabsoluteString方法がありますこれを直接にもデータリストからNSStringの上で動作します。

NSString *urlString = [dataList[indexPath.item][@"image"] stringByReplacingOccurrencesOfString:@"image" withString:@"img"]; 

imageURL = [NSURL URLWithString:urlString]; 
+0

ありがとうございます。それは仕事です – OsamahM

+0

あなたは大歓迎です。それがあなたを助けたら親切に答えを受け入れてください:) – akdsouza

2
NSURL *imageURL = [NSURL URLWithString:dataList[indexPath.item][@"image"]]; 
NSString *urlString = [imageURL.absoluteString stringByReplacingOccurrencesOfString:@"image" withString:@"img"]; 
NSString *webStringURL = [urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; 
imageURL = [NSURL URLWithString:webStringURL]; 

これはあなたを助けることを願っています。

1

あなたはそうNSURLの専用のAPIを使用するURLの最後のパスコンポーネントを交換しようとしている。

NSURL *imageURL = [NSURL URLWithString:dataList[indexPath.item][@"image"]]; 
NSURL *newURL = [[imageURL URLByDeletingLastPathComponent] URLByAppendingPathComponent:@"img.jpg"]; 
NSData *imageData = [NSData dataWithContentsOfURL: newURL]; 

stringByReplacingOccurrencesOfString予期しない動作を引き起こす可能性があります。

関連する問題