在iphone编程中寻找时间
我需要找到我的iphone应用程序的当前时间。我需要把它分解成不同的单位,所以我需要不同变量中的小时、分钟和秒。请帮忙在iphone编程中寻找时间,iphone,objective-c,ios,xcode,time,Iphone,Objective C,Ios,Xcode,Time,我需要找到我的iphone应用程序的当前时间。我需要把它分解成不同的单位,所以我需要不同变量中的小时、分钟和秒。请帮忙 NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateFormat:@"HH"]; int hour = [[dateFormatter stringFromDate:[NSDate date]] intValue]; [dateFormatter setDa
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"HH"];
int hour = [[dateFormatter stringFromDate:[NSDate date]] intValue];
[dateFormatter setDateFormat:@"mm"];
int minute = [[dateFormatter stringFromDate:[NSDate date]] intValue];
[dateFormatter setDateFormat:@"ss"];
int second = [[dateFormatter stringFromDate:[NSDate date]] intValue];
[dateFormatter release];
23:34:6
这是可行的,但是
NSCalendar
和NSDateComponents
是可行的。您也可以格式化“HHmmss”或类似的格式,然后再格式化子字符串。NSDateComponents有点笨拙,因为您必须先创建日历。
NSDate *date = [NSDate date];
NSDateComponents *dateComponents = [calendar components:unitFlags fromDate:date];
NSInteger year = [dateComponents year];
NSInteger month = [dateComponents month];
NSInteger day = [dateComponents day];
NSInteger hour = [dateComponents hour];
NSInteger minute = [dateComponents minute];
NSInteger second = [dateComponents second];
[calendar release];
NSDate *date = [NSDate date];
NSCalendar *calendar = [NSCalendar currentCalendar];
NSCalendarUnit unitFlags = NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit;
NSDateComponents *dateComponents = [calendar components:unitFlags fromDate:date];
NSInteger hour = [dateComponents hour];
NSInteger minute = [dateComponents minute];
NSInteger second = [dateComponents second];
NSLog(@"%ld:%ld:%ld", hour, minute, second);