NSXMLParser Отсутствующие символы
Я анализирую файл XML, используя NSXMLParser
, который прекрасно работает, но иногда дает мне неточные результаты.
Например, я получаю этот URL:
http://www.thehungersite.com/clickToGive/home.faces;jsessionid=01F974DC9E276DA587AE299175EDF4F4.ctgProd02?siteId=4&link=ctg_trs_home_from_ths_home_sitenav
но NSXMLParser
выходы:
http://www.thehungersite.com/clickToGive/home.faces;jsessionid=01F974DC9E276DA587AE299175EDF4F4.ctgProd02?siteId=4&link=ctg_trs_home_from_ths_home_sitenav
По какой-то причине он проигнорировал #38;
часть строки - как я могу получить это обратно? Предполагая, что это была HTML-кодировка, которую я пробовал stringByAddingPercentEscapesUsingEncoding:
но это не сработает.
Есть идеи?
3 ответа
Возможно, лучший ответ на этот вопрос может помочь: Цель-C: Как заменить сущности HTML?
Это в основном категория для созданной NSString, которая предлагает как кодирование, так и декодирование HTML-сущностей в NSString.
XML использует тот же механизм кодирования ссылок на символы, что и HTML (хотя он имеет только 5 предопределенных именованных объектов, в отличие от огромного числа, определенного для HTML). &
это кодировка для &
персонаж.
Вы используете стандарт ISO. Попробуйте использовать%26 или URL-кодировку.