iOS 獲取兩個日期的差值判斷是否大於半年

2021-08-09 10:44:58 字數 1700 閱讀 7720

有兩種方式可以實現

方式一:

// 統一格式

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

[formater setdateformat:@"yyyy-mm-dd hh:mm"];

// create

nsarray *createtimearray = [createdate componentsseparatedbystring:@"."];

createdate = [createtimearray objectatindex:0];

nsdate *newcreatedate = [formater datefromstring:createdate];

nstimeinterval createinterval = [newcreatedate timeintervalsince1970] * 1;

// now

nsarray *nowtimearray = [nowdate componentsseparatedbystring:@"."];

nowdate = [nowtimearray objectatindex:0];

nsdate *newnowdate = [formater datefromstring:nowdate];

nstimeinterval nowinterval = [newnowdate timeintervalsince1970] * 1;

// 得到的時間差是秒數

nstimeinterval timedifference = nowinterval - createinterval;

float halfyear = [[nsnumber numberwithint: ktvuhalfayearinseconds] floatvalue];

nslog(@"jenny 1017 000 建立日期:%@\n 現在的日期:%@\n 中間的差值:%f\n",newcreatedate,newnowdate,timedifference);

if (timedifference - halfyear >= 0.000001) else

方式二:

// 統一格式

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

[formater setdateformat:@"yyyy-mm-dd hh:mm"];

nsdate *create = [formater datefromstring:createdate];

nsdate *now = [formater datefromstring:nowdate];

nstimeinterval timedifference = [now timeintervalsincedate:create];

float halfyear = [[nsnumber numberwithint: ktvuhalfayearinseconds] floatvalue];

nslog(@"jenny 1017 建立日期:%@\n 現在的日期:%@\n 中間的差值:%f\n",create,now,timedifference);

if (timedifference - halfyear >= 0.000001) else

求兩個日期差值問題

給定兩個日期,求這兩個日期之間的天數,如果兩個日期連續規定他們之間的相差天數為兩天。輸入兩個日期,格式為nnnnyyrr 輸出一行,即日期差值。20150202 20160202 乙個簡單的思路,先確定兩個日期的大小,取出年月日,小日期向大日期遞增,每次天數加一,總差值加一。若天數超過了本月的最大天...

iOS 計算兩個日期字串的差值

最近的專案中,由於寫伺服器的大兄弟總是愛將日期以字串的形式傳給前端,而前端要顯示兩個日期的差值,所以自己寫了乙個工具方法來進行轉換,寫下來方便自己以後翻閱,同時也分享給大家。nsstring gettotaltimewithstarttime nsstring starttime endtime n...

iOS 計算兩個日期字串的差值

最近的專案中,由於寫伺服器的大兄弟總是愛將日期以字串的形式傳給前端,而前端要顯示兩個日期的差值,所以自己寫了乙個工具方法來進行轉換,寫下來方便自己以後翻閱,同時也分享給大家。nsstring gettotaltimewithstarttime nsstring starttime endtime n...