#iphone #objective-c #nsstring #nslog
#iPhone #objective-c #nsstring #nslog
Вопрос:
Почему это:
NSString *url = [NSString stringWithFormat:@"http://www.example.com/profile/%@/?s_iphone=true", author];
NSLog(@"url: %@", url);
Выведите это:
http://www.example.com/profile/AuthorName
/?s_iphone=true
Излишне говорить, что URL не будет загружаться, потому что новая строка добавляется к строке сама по себе. Я пробовал удалять пробелы / новые строки и все еще получал тот же результат. Это сводит меня с ума.
Мэтт
Комментарии:
1. Вы проверяли
author
, существует ли новая строка непосредственно перед вызовом приведенного выше кода?2. Спасибо, забыл подумать об этом.
Ответ №1:
Попробуйте это —
NSString *url = [NSString stringWithFormat:@"http://www.example.com/profile/%@/?s_iphone=true", [author stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]]];
NSLog(@"url: %@", url);
Это исправит любые символы новой строки в начале и конце вашей author
строки.
Комментарии:
1. Спасибо, у меня есть пользовательский метод только для этой цели и некоторые дополнительные, я прогнал его и исправил свою проблему. Иногда просто не соображаю ясно.
Ответ №2:
У автора определенно есть новая строка в нем. Попробуйте это:
NSLog(@"The author is %@ on a new line?", author);
Комментарии:
1. Да, странно, что мой метод удаления новых строк не сработал со всей строкой, а сработал бы только с переменной. Автором была строка, взятая из XML, у которой в конце есть неприятные новые строки. Спасибо.