Преобразование NSMutableString в NSUrl в Цели C - PullRequest
1 голос
/ 16 февраля 2011

Я действительно столкнулся с проблемой при разборе xml-файла из динамического URL в Objective-C. Parser отлично работает для всего проекта, но теперь мне нужно установить динамический URL для анализа необходимого XML-файла.

У меня есть две переменные: одна для BaseURL и одна для параметров. Вот мой документированный код:

    //The Baseurl
NSMutableString* baselink = [NSMutableString stringWithString:zimmertyp.typlink];   

//Adds the params to URL
[baselink appendString:aSlice.link];

//In Log it shows the right url to my XML-File with params
NSLog(@"Selected-URL: %@", url);

//I tried to convert the String to NSURL here
NSURL *url = [NSURL URLWithString: baselink];


NSXMLParser *xmlParser = [[NSXMLParser alloc] initWithContentsOfURL:url];
self.navigationItem.prompt = @" ";

//Initialize the delegate.
XMLParser *parser = [[XMLParser alloc] initXMLParser];

//Set delegate
[xmlParser setDelegate:parser];

//Start parsing the XML file.
BOOL success = [xmlParser parse];

if(success)
    NSLog(@"No Errors");
else
    NSLog(@"Error Error Error!!!"); 

Каждый раз, когда Парсер пытается пройти, я получаю:

2011-02-16 16:40:03.371 Project[15566:207] Selected-URL: http://xml.projectwebsite.de/price/doppelzimmer.xml
    ?Zimmertyp=Doppelzimmer+Classic
2011-02-16 16:40:03.373 Project[15566:207] Error Error Error!!!
2011-02-16 16:40:03.374 Project[15566:207] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[NSCFString stringByAppendingString:]: nil argument'

Кажется, что NSUrl пуст или я не прав? Приложение аварийно завершает работу в тот момент, когда парсер инициализируется с помощью URL.

Может кто-нибудь сказать мне, что я виноват?

приветствие, Zarakas

1 Ответ

2 голосов
/ 18 февраля 2011

Я решил проблему самостоятельно. Метод AppendString добавил пробелы в строку ... не знаю почему. Я избежал пробелов из строки. Теперь парсер работает нормально ..;)

...