2011-08-31 5 views
8

qui sotto è il mio codiceNSURL torna Nil Valore

NSString *string = [NSString stringWithFormat:@" http://abc.com /Demo/View.php?drinkId=%@&name=%@&comment=%@&date=%@&rating=%@& ReqestType=SubmitComment",DrinkId,Name,Comment,Date,Rating]; 

NSURL *url   = [[NSURL alloc] initWithString:string]; 

Qui nella stringa non v'è valore, ma url restituisce zero. Qualcuno può dire perché è successo.

Grazie ....

"questo non funzionerà, quindi ecco quello che ho fatto, invece"

NSString *string = [NSString stringWithFormat:@"http://abc.com/Demo/View.php?drinkId=%@&name=%@&comment=%@&date=%@&rating=%@&ReqestType=SubmitComment",DrinkId,Name,Comment,Date,Rating]; 

NSURL *url   = [[NSURL alloc] initWithString:string]; 
+0

Sono contento che la mia risposta ha aiutato. Potresti aiutare tutti fuori e contrassegnare questa domanda come risposta? –

+0

Will U mi dice zappa per contrassegnare questa domanda come risposta? – Vijay

+0

Fai clic sul segno di spunta grigio accanto alla risposta, facendolo diventare verde. –

risposta

26

NSURL tornerà a zero per gli URL che contengono caratteri illegali, come gli spazi.

Prima di utilizzare la stringa con [NSURL URLWithString:], assicurarsi di eliminare tutti i caratteri non consentiti utilizzando [NSString stringByAddingPercentEscapesUsingEncoding:].

Qui è the class reference for NSString.

+0

Grazie Mike Hay Ora il problema è risolto .. – Vijay

+0

Ci sono spazi. – Nekto

+0

Il codice che ci hai mostrato ha spazi. – 0x8badf00d

-1

Ciao a tutti ora Il mio problema è risolto qui Ho fatto un errore lasciando uno spazio vuoto prima di "http".

Il codice corretto è

NSString *string = [NSString stringWithFormat:@"http://myserver.com/Demo/View.php?drinkId=%@&name=%@&comment=%@&date=%@&rating=%@&ReqestType=SubmitComment",DrinkId,Name,Comment,Date,Rating]; 

NSURL *url   = [[NSURL alloc] initWithString:string];