2010-02-22 82 views
20

什么是使用Objective-C获取当前时间(HH:MM:SS)的最佳方式。我想我应该看NSDate & NSDateFormatter。我快速浏览了文档,看起来比我预期的更复杂,所以我想我会在这里检查以确保我处于正确的轨道上。获取当前系统时间?

加里

回答

47
NSDate * now = [NSDate date]; 
NSDateFormatter *outputFormatter = [[NSDateFormatter alloc] init]; 
[outputFormatter setDateFormat:@"HH:mm:ss"]; 
NSString *newDateString = [outputFormatter stringFromDate:now]; 
NSLog(@"newDateString %@", newDateString); 
[outputFormatter release]; 
6

你,其实,在正确的轨道。使用

NSDate *date = [NSDate date]; 

获得当前的日期和时间。使用NSDateFormatter进行格式化。请参阅this link了解如何使用日期和时间格式。

对于你的情况,你可以这样做:

NSDate *date = [NSDate date]; 
NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; 
[formatter setDateFormat:@"%H:%M:%S"]; 
NSString *timeString = [formatter stringFromDate:date]; 
2
NSDateFormatter *DateFormatter=[[NSDateFormatter alloc] init]; 

[DateFormatter setDateFormat:@"yyyy-MM-dd hh:mm:ss"]; 
NSLog(@"%@",[DateFormatter stringFromDate:[NSDate date]]);