[英]Is this string null or not
这是我的字符串在控制台中的输出。
device type-------------(
mobile,
"<null>",
tablet
如何处理第二个值。 我尝试了以下方法,但是在这些行上,应用程序无法正常运行。
if([dType isEqualToString:@"<null>"])
if([dType isEqualToString:@""])
if([dType isEqualToString:@"null"])
以上都不是。 请指导以上内容。 提前致谢。
if (dType == (NSString *)[NSNull null])
{
// your logic here
}
您可以检查[string length] ==0。这将检查它是否是有效但为空的字符串(@“”)以及是否为nil,因为在nil上调用length也会返回0。
另外,您可以尝试使用[string isEqual:[NSNull null]];
也
为此,我在Defines.h文件中使用了两个宏
#define NULLVALUE(m) (m == nil ? @"" : m)
#define NULLVALUE1(m) (m == nil ? @" " : m)
它将空值更改为“”或易于处理的空格“”。
你可以这样检查
if ([YOUR_STRING isKindOfClass:[NSNull class]] || YOUR_STRING == nil ) {
}
+(NSString *) removeNull:(NSString *) string {
if ([string isEqual:[NSNull null]] ) {
return @"";
}
if ([string isEqualToString:@"<null>"]) {
return @"";
}
if ([string isEqualToString:@"null"]) {
return @"";
}
@try {
NSRange range = [string rangeOfString:@"null"];
////////NSLog(@"in removeNull : %d >>>> %@",range.length, string);
if (range.length > 0 || string == nil) {
string = @"";
}
range = [string rangeOfString:@"<null>"];
////////NSLog(@"in removeNull : %d >>>> %@",range.length, string);
if (range.length > 0 || string == nil) {
string = @"";
}
}
@catch (NSException *exception) {
return @"";
}
@finally {
}
string = [self trimString:string];
return string;
}
------------------------------这样的NSString * strFb = [classname removeNull:YourString];
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.