Я использовал NSURL для простой проверки URL, в основном для отсеивания не-ascii специальных символов, которые мне не нужны в моем конкретном приложении.Я беру URL-адрес в качестве ввода в NSString, затем пытаюсь создать NSURL с помощью URLWithString.Если это возвращает ноль, приложение выдает сообщение об ошибке.
Например, если я введу «あ か» в качестве ввода (то есть два японских символа), тогда NSURL будет ноль.Это работает как ожидалось.Однако недавно я заметил, что при вводе строки, содержащей только один не-ASCII-символ, NSURL обрабатывает ее и возвращает значение в кодировке URL.Поэтому, если я введу «あ» в качестве входных данных, полученный NSURL НЕ будет равен нулю.Значение absoluteString равно «% E3% 81% 82».
Мне интересно, является ли это ошибкой в NSURL или какой-то лазейкой, которую я не понимаю.
Iиспользую Xcode 3.2.5 и iOS 4.2 SDK.