在iPhone中获取当前的小时、分钟和秒数

8
如何从中获取当前小时、分钟和秒数?
NSDate *now = [NSDate date];

谢谢!我想要三个int变量,其中存储的是值,而不是显示值的字符串。

1个回答

19

你需要使用NSDateComponents,这有点棘手(更不用说啰嗦了!),因为你需要了解一些 Cocoa 处理日历的方式。在文档中有一个很好的介绍;以下是修改后的摘录:

NSDate *today = [NSDate date];
NSCalendar *gregorian = [[[NSCalendar alloc]
                         initWithCalendarIdentifier:NSGregorianCalendar] autorelease];
NSDateComponents *components =
                    [gregorian components:(NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit) fromDate:today];

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

最后一定要加上 [gregorian autorelease],以防止内存泄漏。 - Tom H
1
autorelease、NSHourCalendarUnit、NSMinuteCalendarUnit以及NSSecondCalendarUnit都已被弃用。 - Java Is Cool

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接