iPhone / iOS的isEqualToString始终返回false
||
我的应用程序中有一个简单的isEqualToString测试,由于某种原因,尽管控制台显示它应该采用真实路径,但它始终采用if语句的错误路径。
这是有问题的代码:
- (void)requestFailed:(ASIHTTPRequest *)request
{
NSError *error = [request error];
NSLog(@\"Program requestFailed with error \'%@\' and reason \'%@\'\", [error localizedDescription], [error localizedFailureReason]);
NSString *errorMessage = [NSString stringWithFormat:@\"%@\",[error localizedDescription]];
if ([[error localizedFailureReason] isEqualToString:@\"(null)\"])
{
}
else
{
errorMessage = [errorMessage stringByAppendingFormat:@\"\\nReason: %@\", [error localizedFailureReason]];
}
[Utils msgBox:@\"Error with Data Download\" message:errorMessage];
}
在控制台中:
2011-04-15 14:27:07.341 Program[79087:207] Program requestFailed with error \'The request timed out\' and reason \'(null)\'
2011-04-15 14:27:07.341 Program[79087:207] Displaying a message box with title \'Error with Data Download\' and message \'The request timed out
Reason: (null)\'
我的Utils类中的msgBox方法将标题和消息输出到控制台,控制台是第二行的来源。
我已经看了一段时间了,答案必须很简单,以免引起注意。有什么建议么? (我尝试将[error localizedDescription]的空白切掉,但无济于事。)我使用的是最新的4.3 iOS SDK。
没有找到相关结果
已邀请:
2 个回复
功飘
总是返回false。 如果您需要检查nil,请将您的字符串与nil进行比较,而不是\“(null)\”。
嘘伪