返回當前時間的前n天或則后n天的時間

封裝了一個小方法,返回當前時間的前n天或則后n天的時間, 返回所需要時間的字符串

/**

*? @author zhengju, 16-06-28 10:06:48

*

*? @brief 返回當前時間的前n天或則后n天的時間

*

*? @param integer 傳入的時間天數

*

*? @return 返回當前時間的前n天或則后n天的時間, 返回所需要時間的字符串

*/

- (NSString *)dateStringFromNowTimeInDays:(NSInteger)integer{

//獲得系統時間

NSDate *? currentDate=[NSDate date];

NSDateFormatter? *dateformatter=[[NSDateFormatter alloc] init];

[dateformatter setDateFormat:@"YYYY-MM-dd HH:mm:ss"];

NSDateComponents *dateComponent = [[NSDateComponents alloc]init];

[dateComponent? setDay:integer];

NSCalendar *Calendar=[NSCalendar currentCalendar];

NSDate * newDate =? [Calendar dateByAddingComponents:dateComponent toDate:currentDate options:0];

NSString * string = [dateformatter stringFromDate:newDate];

return string;

}

比如時間integer傳入7返回一周之后的時間字符串,傳入-7返回一周之前的時間字符串,得到的當前時間currentDate是有時間差的,與當前時間相差八個小時, 此時并不用

NSTimeInterval? timeZoneOffset=[[NSTimeZone systemTimeZone] secondsFromGMT];

NSDate? * newDate=[oldDate dateByAddingTimeInterval:timeZoneOffset];

消除時間差,NSDateComponents類的方法- (NSString *)stringFromDate:(NSDate *)date轉換為字符串時會自動實現消除時間差的。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容