3
4
5
6
|
//具体date自己设定
NSDate
*date1;
NSDate
*date2;
int
timeOffset = [date2 timeIntervalSinceDate:date1];
// 这个是得出两个日期间相差的秒数.注意时区的问题.
int
days = timeOffset/3600/24;
|
另外在处理ios日期的时候注意时区的问题.下面这个函数是转化任意日期到当前时区
1
2
3
4
5
6
7
|
+(
NSDate
*)convertDateToLocalTime:(
NSDate
*)forDate {
NSTimeZone
*nowTimeZone = [
NSTimeZone
localTimeZone];
int
timeOffset = [nowTimeZone secondsFromGMTForDate:forDate];
NSDate
*newDate = [forDate dateByAddingTimeInterval:timeOffset];
return
newDate;
}
|
NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
unsigned int unitFlags = NSDayCalendarUnit;
NSDateComponents *comps = [gregorian components:unitFlags fromDate:date toDate:now options:0];
int days = [comps day];
unsigned int unitFlags = NSDayCalendarUnit;
NSDateComponents *comps = [gregorian components:unitFlags fromDate:date toDate:now options:0];
int days = [comps day];