获得领先零的时间

时间:2012-02-16 20:30:32

标签: objective-c ios

Here是我之前关于在objective-c中使用日期的问题。如何使用前导零获得小时,分钟和秒?

2 个答案:

答案 0 :(得分:5)

既然您已经将小时,分钟和秒作为字符串进行了预测,那么以下是如何获取它们的:

NSDateComponents *components = [[NSCalendar currentCalendar] components:NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit fromDate:[NSDate date]]; 

NSInteger hour= [components hour];   
NSInteger minute = [components minute];
NSInteger second = [components second];

NSString *hourString = [NSString stringWithFormat:@"%02d", hour];
NSString *minuteString = [NSString stringWithFormat:@"%02d", minute];
NSString *secondString = [NSString stringWithFormat:@"%02d", second];

关键是在格式化时使用"%02d",以保证你得到两位数。

答案 1 :(得分:2)

我认为您希望将“日期”格式化为字符串,并且您希望字符串中的前导零。

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"HH:mm:ss"];
NSString *formattedDateString = [dateFormatter stringFromDate:date];