位置:首页 » 文章/教程分享 » Objective-C 日期和时间

NSDate 和 NSDateFormatter 类提供的日期和时间的功能。

NSDateFormatter是辅助类,可以轻松转换 NSDate 为 NSString,反之亦然。

下面是一个简单的例子来说明 NSDate 和 NSString 之间的转化。 

#import <Foundation/Foundation.h>

int main()
{
   NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
   NSDate *date= [NSDate date];
   NSDateFormatter *dateFormatter = [[NSDateFormatter alloc]init];
   [dateFormatter setDateFormat:@"yyyy-MM-dd"];
   NSString *dateString = [dateFormatter stringFromDate:date];
   NSLog(@"Current date is %@",dateString);
   NSDate *newDate = [dateFormatter dateFromString:dateString];
   NSLog(@"NewDate: %@",newDate);
   [pool drain]
   return 0;
}

现在,当我们编译并运行程序,我们会得到以下的结果。

2013-09-29 14:48:13.445 Date and time[870] Current date is 2013-09-29
2013-09-29 14:48:13.447 Date and time[870] NewDate: 2013-09-28 18:30:00 +0000

正如我们可以看到在上面的程序中,我们得到了当前时间,在 NSDate 的帮助下。

NSDateFormatter类,容易格式转换。

日期格式基于可用的数据可以改变。例如,当我们要添加的时间上面的例子中,日期格式可以改为 @"yyyy-MM-dd:hh:mm:ss"