2010-03-16 2 views
0

я следующая проблема иногда моя OpenUrl-Dialog работает отлично, тогда я смотрел на переменную из URL и что переменная:NSURL не работает в любое время

www.brehm-gmbh.de 

но некоторые другие времена там находятся в конце переменной, как это некоторые сумасшедшие элементы:

www.adamczyk-fenster.de%E2%80%8E 

я получаю эти страницы из файла .asc и оба находятся в этом файле нормально без этого элементы, , что я могу сделать, чтобы решить эту проблему?

спасибо всем за помощь заранее

+0

'% E2% 80% 8E = U + 200E =" Слева направо Mark "' – kennytm

+0

да, я слышал об этом, но в чем проблема, возможно, есть некоторые признаки, которые невидимы? – Marco

ответ

0

От Wikipedia:

Левый направо знака (РДД) является символом управления или непечатаемый характера, используемый в компьютерной наборного двунаправленного текста, , содержащий смешанные сценарии слева направо (например, на английском и русском языках) и скрипты справа налево (например, арабский и иврит). Он используется для изменения смежных символов сгруппированных относительно направления текста.

Вы получаете это, потому что (1) вы получили не на английском языке URL-адрес, составляет адрес из неанглийских строк или у вас есть какие-то другие не английские элементы и строка кодирование пытается компенсировать или (2) это garbarge интерпретируется как кодирование (маловероятно, если оно является последовательным.)

Позвоните -[NSString localizedNameOfStringEncoding] на строку перед тем, как использовать ее, посмотрите, какую кодировку она использует. Вероятно, вам нужно явно установить кодировку, когда вы читаете строки, прежде чем поместить их в NSURL.

+0

ok Я решил проблему, я скопировал рабочую страницу на нерабочую страницу и изменил текст между www. и .de, и это работает, спасибо за помощь мне – Marco

Смежные вопросы