根据指定日期与现在日期时间对比相差几周几月

#define knewsTimeFormat @"yyyyMMddHHmmss" //你要传过来日期的格式

#define kLocaleIdentifier @"en_US"

// 发布时间

- (NSString *)newsTime:(NSString *)newsTimes

{

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

formatter.dateFormat = knewsTimeFormat;

formatter.locale = [[NSLocale alloc] initWithLocaleIdentifier:kLocaleIdentifier];

NSDate *date = [formatter dateFromString:newsTimes];

NSDate *now = [NSDate date];

// 比较帖子发布时间和当前时间

NSTimeInterval interval = [now timeIntervalSinceDate:date];

NSString *format;

if (interval <= 60) {

format = @"刚刚";

} else if(interval <= 60*60){

format = [NSString stringWithFormat:@"发布于前%.f分钟", interval/60];

} else if(interval <= 60*60*24){

format = [NSString stringWithFormat:@"发布于前%.f小时", interval/3600];

} else if (interval <= 60*60*24*7){

format = [NSString stringWithFormat:@"发布于前%d天", (int)interval/(60*60*24)];

} else if (interval > 60*60*24*7 & interval <= 60*60*24*30 ){

format = [NSString stringWithFormat:@"发布于前%d周", (int)interval/(60*60*24*7)];

}else if(interval > 60*60*24*30 ){

format = [NSString stringWithFormat:@"发布于前%d月", (int)interval/(60*60*24*30)];

}

formatter.dateFormat = format;

return [formatter stringFromDate:date];

}

你可能感兴趣的:(根据指定日期与现在日期时间对比相差几周几月)