NSDate和NSCalendar的簡單應用

2021-07-14 22:29:05 字數 2325 閱讀 2485

nsdate:用於建立時間物件

nstimezone :用於建立時區物件

nsdateformatter:用於建立時間格式化物件

nscalendar:用於建立日曆類

//只要是通過date方法建立的時間物件, 物件中就儲存了當前的時間

nsdate *now = [nsdate date];

nslog(@"%@",now);

//在now的基礎上追加10秒

nsdate *now1 = [now datebyaddingtimeinterval:10];

nslog(@"%@",now1);

//獲取當前系統的所在時區

nstimezone *timezone = [nstimezone systemtimezone];

nslog(@"timezone = %@",timezone);

//獲取當前時區和指定時區的時間差

nsinteger seconds =[timezone secondsfromgmtfordate:now];

nslog(@"seconds = %ld",seconds);

//建立乙個時間格式化物件

nsdateformatter *formatter = [[nsdateformatter alloc] init];

formatter.dateformat = @"yyyy-mm-dd hh-mm-ss z";

//把string -> date

nsstring *now1 = @"2016-07-14 03:16:28 +0011";

nslog(@"%@",[formatter datefromstring:now1]);

———————————————————

//建立乙個時間物件

nsdate *now = [nsdate date];

//建立乙個日曆物件

nscalendar *calender = [nscalendar currentcalendar];

// 利用日曆類從當前時間物件中獲取 年月日時分秒(單獨獲取出來)

// components: 引數的含義是, 問你需要獲取什麼?

// 一般情況下如果乙個方法接收乙個引數, 這個引數是是乙個列舉 , 那麼可以通過|符號, 連線多個列舉值

nscalendarunit type = nscalendarunityear |

nscalendarunitmonth |

nscalendarunitday |

nscalendarunithour |

nscalendarunitminute |

nscalendarunitsecond;

nsdatecomponents *cmps = [calender components:type fromdate:now];

nslog(@"year = %ld", cmps.year);

nslog(@"month = %ld", cmps.month);

nslog(@"day = %ld", cmps.day);

nslog(@"hour = %ld", cmps.hour);

nslog(@"minute = %ld", cmps.minute);

nslog(@"second = %ld", cmps.second);

//兩個時間的比較

nsstring *str = @"2015-06-29 07:05:26 +0000";

nsdateformatter *formatter = [nsdateformatter new];

formatter.dateformat = @"yyyy-mm-dd hh:mm:ss z";

//建立乙個過去的時間

nsdate *date = [formatter datefromstring:str];

//獲取現在時間

nsdate *now1 = [nsdate date];

nscalendar *calendar = [nscalendar currentcalendar];

nsdatecomponents *component1 = [calendar components:type fromdate:date todate:now1 options:0];

nslog(@"%ld年%ld月%ld日%ld小時%ld分鐘%ld秒鐘", component1.year, component1.month, component1.day, component1.hour, component1.minute, component1.second);

NSDate基本用法

nsdate常用 範例 nsdate類用於儲存時間值,同時提供了一些方法來處理一些基於秒級別時差 time interval 運算和日期之間的早晚比較等。1.建立或初始化可用以下方法 用於建立nsdate例項的類方法有 id date 返回當前時間 id datewithtimeintervalsi...

NSDate 使用總結

1 當前時間建立nsdate nsdate mydate nsdate date nslog mydate mydate 2 從現在開始的24小時 nstimeinterval secondsperday 24 60 60 nsdate tomorrow nsdate datewithtimeint...

NSDate型別介紹

1 當前時間建立nsdate nsdate mydate nsdate date 很重要 nslog mydate mydate 2 從現在開始的24小時 nstimeinterval secondsperday 24 60 60 nsdate tomorrow nsdate datewithtim...