【发布时间】:2012-10-25 22:51:53
【问题描述】:
所以我一直在尝试比较 xcode 中的两个 NSString。但是,它不起作用。我做错了什么?
NSString Prog 是从 mysql 解析的 xml 字符
char *cStr = "YES";
NSString *str3 = [NSString stringWithUTF8String:cStr];
if ([str3 isEqualToString:prog]) {
[switch1 setOn:YES animated:YES];
}
else {
[switch1 setOn:NO animated:YES];
}
【问题讨论】:
-
如果
prog等于 YES 或 NO,您的cStr字符为“YES”,您应该考虑改用 BOOL。 -
好吧,不幸的是,我不能在这种特殊情况下使用布尔值。如果 prog 是 YES 或 No,我希望它执行一个命令。但它不起作用。
-
当然,在这个例子中不需要
stringWithUTF8String。可能只是if ([@"YES" isEqualToString:prog])。但我会假设 C 字符串来自其他地方,这就是为什么你需要那个构造?? -
而且,顺便说一句,普通的旧 NSLog 在调试时可以创造奇迹。
标签: objective-c ios nsstring string-comparison foundation