2010-04-10 66 views
-1

嘿所有,我檢查我的服務器上的文件檢查互聯網連接。該文件僅在頁面上顯示單詞LIVE。沒有HTML或其他任何東西,只是單詞LIVE。奇怪的是,如果沒有從URL文本問題請求的數據

當我運行這段代碼時,我確實把NSLog當作「現場」,但是一旦我去檢查它與IF語句,它會失敗,我只是不知道爲什麼?

NSString* myFile = [NSString stringWithFormat:@"http://www.xxx.com/iPodTouchPing.html"]; 
NSString* myFileURLString = [myFile stringByReplacingPercentEscapesUsingEncoding:NSASCIIStringEncoding]; 
NSData *myFileData = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:myFileURLString]]; 
NSString *returnedMyFileContents=[[[NSString alloc] initWithData:myFileData encoding:NSASCIIStringEncoding] autorelease]; 

NSLog(@"%@", returnedMyFileContents); 

if (returnedMyFileContents == @"LIVE") { 
    NSLog(@"LIVE!"); 
}else{ 
    NSLog(@"Not Live"); 
} 

我在做什麼錯?我似乎無法找到原因?

大衛

回答

1

你不能比較的字符串一樣,在目標C - 你只是比較它們地址,而不是它們的內容。將您的代碼更改爲:

if ([returnedMyFileContents isEqualToString:@"LIVE"]) { 
    NSLog(@"LIVE!"); 
} else { 
    NSLog(@"Not Live"); 
} 
+0

太棒了,工作。謝謝你,保羅:o) – StealthRT 2010-04-10 06:40:34