Внести изменения в NSURL - PullRequest
1 голос
/ 14 апреля 2011

Я пытаюсь вставить что-то в NSURL. Я получаю свой URL из строки jSon:

imageUrl = [NSURL URLWithString:[[jsonPost objectAtIndex:countPage] objectForKey:@"excerpt"]];

Теперь imageURL содержит следующее:

http://www.site.com/images/uploads/2011/04/2010-12-14-image.gif

Я пытаюсь изменить URL-адрес на:

http://www.site.com/images/uploads/2011/04/2010-12-14-image_r.gif

Поэтому перед расширением будет добавлено _r.

1 Ответ

4 голосов
/ 14 апреля 2011

метод 1: (работает нормально, если известно, что расширение файла .gif)

NSString *string = [[jsonPost objectAtIndex:countPage] objectForKey:@"excerpt"]];
NSArray *array = [string componentsSeparatedByString:@".gif"]; //separated by dot
NSString *editedString = [NSString stringWithFormat:@"%@_r.gif",[array objectAtIndex:0]];
NSURL *url = [NSURL urlWithString:editedString];

редактировать: более надежное решение:

NSRange range;
range.location = 0;//starting from the first character
range.length = string.length - 4;//excluding the last 4 characters
//of course you have to make sure the .extension part is 4 characters long(at least fixed length), not like .torrent or .rmvb
NSString *newString = [urlString substringWithRange:range];//this should give you the url part without the file extension

//then append the newString with something and make your url with this string
...