Objective-C日期和時間

2019-10-16 23:14:53

在Objective-C中,NSDateNSDateFormatter類用於提供日期和時間的功能。
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;
}

執行上面範例程式碼,得到以下結果 -

2018-11-16 04:56:39.054 main[109095] Current date is 2018-11-16
2018-11-16 04:56:39.054 main[109095] NewDate: 2018-11-16 00:00:00 +0000

正如在上面的程式中看到的那樣,使用NSDate類物件獲得當前時間。

NSDateFormatter是負責轉換格式的類。

可以根據可用資料更改日期格式。例如,當想要為上面的例子新增時間點時,日期格式可以改為@"yyyy-MM-dd:hh:mm:ss"