Objective-C 中的日期和時間



NNSDate 和 NSDateFormatter 類提供了日期和時間特性。

NSDateFormatter 是一個幫助類,可輕鬆將 NSDate 轉換為 NSString,反之亦然。

下面顯示了一個簡單的示例,展示瞭如何將 NSDate 轉換為 NSString,再轉換為 NSDate。

#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"

objective_c_foundation_framework.htm
廣告