2010-10-11 17 views
4

我在首次調用時間戳值爲nil的方法時,我將字符串轉換爲url .next時間,當再次單擊加載更多結果按鈕時,方法調用時間戳值分配給它。但url字符串不轉換成NSURL iam獲取空值到它。在iphone中將urlString轉換爲NSURL的問題sdk

-(NSMutableArray*)getTextMessagesArray:(NSString *)endTimestamp 
{ 
    printf("\n endtimestamp value...%s",[endTimestamp UTF8String]); 
    NSString *urlString = @"http://123.237.186.221:8080/upload/textRequest.jsp"; 
    urlString = [urlString stringByAppendingString:@"?beginTimestamp="]; 
    urlString = [urlString stringByAppendingString:@"&endTimestamp="]; 
    if([endTimestamp length]>0) 
    { 
      urlString = [urlString stringByAppendingString:endTimestamp]; 
    } 
    printf("\n &*(*(((urlString...%s",[urlString UTF8String]); 
    NSURL* aUrl = [NSURL URLWithString:urlString]; 

    NSLog(@"url in appdelegaare in text...%@",aUrl); 


    [textParser parseXMLFileAtURL:aUrl]; 
    textMessagesList = [textParser getTextMessagesList]; 
    printf("\n textMessagesList Count in appDelegate....%d",[textMessagesList count]); 
    return textMessagesList; 
    } 

我在控制檯得到的結果是:

&*(*(((urlString...http://123.237.186.221:8080/upload/textRequest.jsp?endTimestamp=2010-10-08 16:20:47.0 
url in appdelegaare in text...(null) 

蓋伊的任何一個可以建議我爲什麼會發生

任何人的幫助將非常感激。

謝謝大家, Monish。

回答

17

你的問題是有效的URL不能包含空格。你想沿着以下幾條線做點什麼:

NSString *escapedUrlString = [urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; 
// escapedUrlString should be "http://123.237.186.221:8080/upload/textRequest.jsp?endTimestamp=2010-10-08%2016:20:47.0" 
NSURL *aUrl = [NSURL URLWithString:escapedUrlString]; 

這可能是你想要的。

+0

非常感謝,我想要的是完全一樣的東西。 – 2010-10-11 11:03:35

+0

從小時發現錯誤..這很有幫助。感謝 – 2014-06-25 11:47:05

+0

完美..這就是我們必須做的 – ravinder521986 2016-03-29 06:44:07