Objective c 比不处理URL文本中的请求数据更奇怪

Objective c 比不处理URL文本中的请求数据更奇怪,objective-c,iphone,Objective C,Iphone,嘿,我正在通过检查服务器上的文件来检查internet连接。该文件仅在页面上显示LIVE一词。没有HTML或其他内容,只有LIVE这个词 当我运行这段代码时,我得到的NSLog是“LIVE”,但一旦我用IF语句检查它,它就失败了,我只是不知道为什么 NSString* myFile = [NSString stringWithFormat:@"http://www.xxx.com/iPodTouchPing.html"]; NSString* myFileURLString = [myFile

嘿,我正在通过检查服务器上的文件来检查internet连接。该文件仅在页面上显示LIVE一词。没有HTML或其他内容,只有LIVE这个词

当我运行这段代码时,我得到的NSLog是“LIVE”,但一旦我用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");
}
我做错了什么?我似乎找不到原因


David

在Objective C中,您不能比较这样的字符串-您只是比较它们的地址,而不是它们的内容。将代码更改为:

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