2011-01-09 8 views
0

Ich versuche, Daten von einem XML-Webdienst zu analysieren, aber ich kann meine URL nicht abrufen. Bitte überprüfen Sie meinen Code:Nicht in der Lage, gültige nsurl zu erstellen

NSLog(@"log url: %@",url); 
[url stringByAddingPercentEscapesUsingEncoding: NSASCIIStringEncoding]; 
NSLog(@"%@",url); 
[url stringByReplacingOccurrencesOfString:@" " withString:@"%20"]; 
NSLog(@"%@",url); 

NSURL *URL = [NSURL URLWithString:url]; 
NSXMLParser *home_Parser = [[NSXMLParser alloc] initWithContentsOfURL:URL]; 
[home_Parser setDelegate:self]; 
[home_Parser parse]; 
[home_Parser release]; 

Ich bekomme immer URL als Null. Der Grund ist, dass meine String-URL Leerzeichen enthält. Ich habe versucht, es zu ersetzen und es zu entkommen, aber es funktioniert nicht. Im Folgenden ist die URL, die ich verwende

http://www.mydomain.com/radioListGenre.php?genre=Radiostations spielen Rock wie kann ich diesen Raum entfernen. Gibt es noch eine andere Technik als die oben genannten?

Dank
Pankaj

+0

Sie benötigen 4 Plätze vor * jede Zeile Code *, um sie alle Format zu haben. Der einfachste Weg besteht darin, einfach den gesamten Code auszuwählen und auf die Schaltfläche ** {} ** zu klicken, die 4 Leerzeichen am Anfang jeder ausgewählten Zeile hinzufügt. –

Antwort

2

stringByAddingPercentEscapesUsingEncoding und stringByReplacingOccurrencesOfString arbeiten auf der Saite und einen String zurückzukehren. Sie weisen den Rückgabewert nichts zu, so dass sich die URL nicht ändert, der Rückgabewert verschwindet einfach im Raum. Sie möchten etwas mehr wie:

url = [url stringByAddingPercentEscapesUsingEncoding: NSASCIIStringEncoding]; 

vorausgesetzt, URL ist eine veränderbare Zeichenfolge. Jetzt URL enthält die geänderte Version von URL. Ohne die Zuordnung ist es wirksam, die gleiche wie so etwas wie dies zu tun:

a + 1; 

statt:

a = a + 1 
+0

ja ich fand es später heraus ... ein dummer fehler von meiner seite .... danke für die antwort – pankaj

+0

vielen dank ... –