我正在使用Facebook图形API,我有一个注释数组。这个注释数组有很多空值。我怎么处理这个?
这是我的代码。
NSArray *commentData =[TheMainData valueForKey:@"comments"];
NSArray *thecommentdata =[commentData valueForKey:@"data"];
//NSLog(@"%@",thecommentdata);
NSMutableArray *themaincommentdata=[[NSMutableArray alloc] init];
themaincommentdata =[[thecommentdata objectAtIndex:indexPath.row]valueForKey:@"message" ];
NSLog(@"%@",themaincommentdata);
当我记录我的thecommentdata
数组时,我得到以下结果:
(
{
"can_remove" = 1;
"created_time" = "2014-04-30T13:22:45+0000";
from = {
id = 100000329153640;
name = "Ishant Tiwari";
};
id = "241720846019272_241721019352588";
"like_count" = 0;
message = "waoooo iron man comment .................";
"user_likes" = 0;
},
{
"can_remove" = 1;
"created_time" = "2014-04-30T13:25:16+0000";
from = {
id = 100000329153640;
name = "Ishant Tiwari";
};
id = "241720846019272_241721626019194";
"like_count" = 0;
message = "2nd comment";
"user_likes" = 0;
}
),
"<null>",
"<null>",
"<null>",
"<null>",
"<null>",
"<null>",
"<null>",
"<null>",
"<null>",
"<null>",
"<null>",
"<null>",
"<null>",
(
{
"can_remove" = 1;
"created_time" = "2014-04-25T05:14:34+0000";
from = {
id = 100005440749818;
name = "Birjesh Sharma";
};
id = "240287756162581_240287929495897";
"like_count" = 0;
message = "comment by nishant";
"user_likes" = 0;
}
),
"<null>",
"<null>",
"<null>",
"<null>",
"<null>",
"<null>",
"<null>",
"<null>",
"<null>",
"<null>"
)
在我点击空值后,没有评论可以从thecommentdata
导入到themaincommentdata
数组的问题。
以下是themaincommentdata
数组的日志输出:
(
"waoooo iron man comment .................",
"2nd comment"
)
2014-05-01 11:31:34.819 Dozo[741:3b0b] CFNetwork SSLHandshake failed (-9806)
我该如何处理这类问题?
答案 0 :(得分:0)
尝试使用这样的东西:
-(BOOL)isNullForObject:(id)obj{
return (!obj || obj = (id)[NSNull null]);
}
id fieldX =...
if (![self isNullForObject:fieldX]){
// Do your stuff...
}
希望有所帮助
答案 1 :(得分:0)
您可以使用try-catch
阻止或if
条件
try-catch
会阻止
@try {
themaincommentdata =[[thecommentdata objectAtIndex:indexPath.row]valueForKey:@"message" ];
....
....
}
@catch(NSException *exception) {
NSLog(@"Some NULL Values");
}
使用if
条件
if (![[thecommentdata objectAtIndex:indexPath.row]valueForKey:@"message" ] == [NSNull null]) {
NSLog(@"%@", [[thecommentdata objectAtIndex:indexPath.row]valueForKey:@"message" ]);
}