Мне нужно изменить строковое значение, если оно соответствует определенным критериям, но мне пока не везет.Я не уверен, что это входная строка или я делаю что-то в корне неправильно - вот мой код:
NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
NSMutableString *stadium = [NSMutableString stringWithString:[prefs stringForKey:@"stadiumname"]];
NSLog(@"stadium: %@", stadium);
if([prefs stringForKey:@"stadiumname"]==@"Brighton & Hove")
{
[stadium setString:@"Hove"];
}
if([prefs stringForKey:@"stadiumname"]==@"Monmore Green")
{
[stadium setString:@"Monmore"];
}
NSLog(@"stadium: %@", stadium);
В выводе NSLog с обеих сторон я все еще получаю "Brighton & Hove" или "Monmore Green ", а не просто" Hove "или" Monmore ", как я ожидал.Я попытался изменить поле ввода, чтобы учесть возможное кодирование, выполнив:
NSMutableString *stadium = [NSMutableString stringWithString:[[prefs stringForKey:@"stadiumname"] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
, но это не имеет значения.Будет ли NSLog отображать какую-либо кодировку в строке в любом случае?
Мне просто нужно иметь возможность использовать укороченную строку, как только она выйдет на другую сторону, но пока не повезло.
Может кто-нибудьпросвети меня?