2012-05-21 2 views
1

Загрузите XML-файл, содержащий несколько URL-адресов. Он отлично работает, но когда я ввожу URL в XML следующим образом:Как читать URL-адреса (со специальными символами) с помощью NSXMLParser?

http://eda-bea.es/pub/record_card_1.php?refpage=%252Fpub%252Fsearch_select.php&quicksearch=adra&page=1&rec=3

анализатор останавливается.

Из того, что я понимаю, что URL содержит специальные символы, я искал и дал в качестве возможного решения следующий код, где информация кодируется в UTF8 перед разбором:

NSString *dataString = [[NSString alloc] initWithContentsOfURL:URL encoding:NSUTF8StringEncoding error:error]; 
NSData *data = [dataString dataUsingEncoding:NSUTF8StringEncoding]; 

NSXMLParser *parser = [[NSXMLParser alloc] initWithData:data]; 
[parser setDelegate:self]; 

[parser parse]; 

Это не работает. Прекратить разбор в этом методе

-(void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName 
           namespaceURI:(NSString *)namespaceURI 
           qualifiedName:(NSString *)qName 
            attributes:(NSDictionary *)attributeDict 

Любые идеи?

Спасибо.

+0

Что-то более информативным, чем другие «не работает»? –

ответ

1

раствор с помощью поля

<![CDATA[http://eda-bea.es/pub/record_card_1.php?refpage=%252Fpub%252Fsearch_select.php&quicksearch=adra&page=1&rec=3]]> 
0

Измененное Ответ

Эта ссылка http://eda-bea.es/pub/record_card_1.php?refpage=%252Fpub%252Fsearch_select.php&quicksearch=adra&page=1&rec=3 не является XML-документ, что это HTML документ.

Парсер провалится на <link rel="stylesheet" type="text/css" href="images.php/hispep.css">, потому что здесь нет конца тега ссылки.

+0

Извините, неверно вставьте ссылку, это правильно http://eda-bea.es/pub/record_card_1.php?refpage=%252Fpub%252Fsearch_select.php&quicksearch=adra&page=1&rec=3 – Menthor

+0

Извините, я думал, что вы пытаетесь внедрить эту URL в XML-документ. Я дам второй ответ. –

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