将NSDateFormatter时间转换为小时和分钟作为整数

时间:2012-12-17 11:29:12

标签: objective-c nsstring integer int nsdateformatter

如何将NSDateFormatter转换为整数?

我有这个代码可以使用:

     NSDateFormatter *timeOfDayInt = [[[NSDateFormatter alloc] init] autorelease];
     [timeOfDayInt setDateFormat:@"HHmm"];
    int currentTime = (int)[timeOfDayInt stringFromDate:[NSDate date]];


    if(currentTime >= 1400 && currentTime <= 1500) {
     //do something
}

扼杀,这段代码就像前一天一样,现在它返回了一些奇怪的数字...... 我真的找不到问题的灵魂,我会回答问题。 谢谢!

PS:

如果我记录时间,NSLog(@"%@",[timeOfDayInt stringFromDate:[NSDate date]]);

它正确记录..为什么它不起作用?

2 个答案:

答案 0 :(得分:2)

不要将String投射到int。我不知道这应该怎么做。

请改为尝试:

int currentTime = [[timeOfDayInt stringFromDate:[NSDate date]] intValue];

答案 1 :(得分:0)

为什么你不convert string使用int进入intValue

int currentTime = [[timeOfDayInt stringFromDate:[NSDate date]] intValue];

casting stringint,它不能converted进入int