2012-12-03 77 views
-1

如何正確替換以下內容?如何用nsstring變量替換%@? iPhone

NSString *stringURL = [NSString stringWithFormat:@"http://192.168.1.183:8001/GetDocument.aspx?id=%@ & user=admin_document",self.index]; 
NSURL *targetURL = [NSURL URLWithString:stringURL]; 

我想用self.index替換%@。

+0

你面臨的問題是什麼? –

+0

你想要什麼? –

+1

是self.index是整數或字符串類型...如果字符串類型然後使用%@,或者如果整數類型然後使用%d – SachinVsSachin

回答

1

你的問題是更可能的空白。嘗試刪除它:

NSString *stringURL = [NSString stringWithFormat:@"http://192.168.1.183:8001/GetDocument.aspx?id=%@&user=admin_document", self.index]; 
NSLog(@"URL:%@", stringURL); //You can print out to check 
NSURL *targetURL = [NSURL URLWithString:stringURL]; 
+0

是的你是對的。現在它可以工作。謝謝!:) – alin

+0

不要感謝..接受=]點擊最有幫助的答案旁邊的綠色複選標記。 –

+0

我不得不等待5分鐘,以檢查小綠色複選標記。 ;) – alin

0

如果self.index不是NSString對象,則%@格式說明符將不起作用。我懷疑像index這樣的名稱可能是NSInteger或類似的名稱,在這種情況下,您想用%d代替。

查看this Apple documentation所有可能的格式說明符以及它們對應的類型。編譯器應該選擇你,並提供正確的說明符。

+0

問題是鏈接中的空白。現在問題解決了。謝謝大家的幫助!:) – alin

0

只解析和使用它,如果它是整數,那麼你使用這樣

int a=10; 
NSString *stringURL = [NSString stringWithFormat:@"this is my number %d",a]; 

,如果你想使用字符串,那麼你不喜歡這個

NSString [email protected]"john"; 
NSString *stringURL = [NSString stringWithFormat:@"this is my name %@",stringName]; 
1

刪除鏈接中的空格。