1

實際上,在Objective-C中從動態url解析xml文件時,遇到了問題。 解析器對整個項目工作正常,但現在我必須設置一個動態URL來解析所需的XML文件。在目標C中將NSMutableString轉換爲NSUrl

我有兩個變量:一個用於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是空的,還是我錯了? 當Parser使用url初始化時,應用程序崩潰。

誰能告訴我什麼是我的錯?

問候, Zarakas

+0

在代碼或調試器中打印URL並找出! – bbum 2011-02-16 16:48:56

回答

2

我自己解決了這個問題。 AppendString方法將空格添加到String ...不知道爲什麼。我逃離了絃樂的空間。現在解析器工作正常..;)