计算指定时间与当前的时间差 比如,3天前、10分钟前
2014-09-24 09:27
323 查看
计算指定时间与当前的时间差 比如,3天前、10分钟前(这个在项目中经常遇到,所以记录了下来)
以下是实现方法:
/**
* 计算指定时间与当前的时间差
* @param compareDate 某一指定时间
* @return 多少(秒or分or天or月or年)+前 (比如,3天前、10分钟前)
*/
+(NSString *) compareCurrentTime:(NSDate*) compareDate
//
{
NSTimeInterval timeInterval = [compareDatetimeIntervalSinceNow];
timeInterval = -timeInterval;
long temp = 0;
NSString *result;
if (timeInterval < 60) {
result = [NSStringstringWithFormat:@"刚刚"];
}
else if((temp = timeInterval/60) <60){
result = [NSStringstringWithFormat:@"%d分前",temp];
}
else if((temp = temp/60) <24){
result = [NSStringstringWithFormat:@"%d小前",temp];
}
else if((temp = temp/24) <30){
result = [NSStringstringWithFormat:@"%d天前",temp];
}
else if((temp = temp/30) <12){
result = [NSStringstringWithFormat:@"%d月前",temp];
}
else{
temp = temp/12;
result = [NSStringstringWithFormat:@"%d年前",temp];
}
return result;
}
以下是NSDate中的常用方法:
/**
- (id)initWithTimeInterval:(NSTimeInterval)secs sinceDate:(NSDate *)refDate;
初始化为以refDate为基准,然后过了secs秒的时间
- (id)initWithTimeIntervalSinceNow:(NSTimeInterval)secs;
初始化为以当前时间为基准,然后过了secs秒的时间
- (NSTimeInterval)timeIntervalSinceDate:(NSDate *)refDate;
以refDate为基准时间,返回实例保存的时间与refDate的时间间隔
- (NSTimeInterval)timeIntervalSinceNow;
以当前时间(Now)为基准时间,返回实例保存的时间与当前时间(Now)的时间间隔
- (NSTimeInterval)timeIntervalSince1970;
以1970/01/01 GMT为基准时间,返回实例保存的时间与1970/01/01 GMT的时间间隔
- (NSTimeInterval)timeIntervalSinceReferenceDate;
以2001/01/01 GMT为基准时间,返回实例保存的时间与2001/01/01 GMT的时间间隔
+ (NSTimeInterval)timeIntervalSinceReferenceDate;
*/
//秒
// - (NSTimeInterval)timeIntervalSinceNow;
// 以当前时间(Now)为基准时间,返回实例保存的时间与当前时间(Now)的时间间隔
以下是实现方法:
/**
* 计算指定时间与当前的时间差
* @param compareDate 某一指定时间
* @return 多少(秒or分or天or月or年)+前 (比如,3天前、10分钟前)
*/
+(NSString *) compareCurrentTime:(NSDate*) compareDate
//
{
NSTimeInterval timeInterval = [compareDatetimeIntervalSinceNow];
timeInterval = -timeInterval;
long temp = 0;
NSString *result;
if (timeInterval < 60) {
result = [NSStringstringWithFormat:@"刚刚"];
}
else if((temp = timeInterval/60) <60){
result = [NSStringstringWithFormat:@"%d分前",temp];
}
else if((temp = temp/60) <24){
result = [NSStringstringWithFormat:@"%d小前",temp];
}
else if((temp = temp/24) <30){
result = [NSStringstringWithFormat:@"%d天前",temp];
}
else if((temp = temp/30) <12){
result = [NSStringstringWithFormat:@"%d月前",temp];
}
else{
temp = temp/12;
result = [NSStringstringWithFormat:@"%d年前",temp];
}
return result;
}
以下是NSDate中的常用方法:
/**
- (id)initWithTimeInterval:(NSTimeInterval)secs sinceDate:(NSDate *)refDate;
初始化为以refDate为基准,然后过了secs秒的时间
- (id)initWithTimeIntervalSinceNow:(NSTimeInterval)secs;
初始化为以当前时间为基准,然后过了secs秒的时间
- (NSTimeInterval)timeIntervalSinceDate:(NSDate *)refDate;
以refDate为基准时间,返回实例保存的时间与refDate的时间间隔
- (NSTimeInterval)timeIntervalSinceNow;
以当前时间(Now)为基准时间,返回实例保存的时间与当前时间(Now)的时间间隔
- (NSTimeInterval)timeIntervalSince1970;
以1970/01/01 GMT为基准时间,返回实例保存的时间与1970/01/01 GMT的时间间隔
- (NSTimeInterval)timeIntervalSinceReferenceDate;
以2001/01/01 GMT为基准时间,返回实例保存的时间与2001/01/01 GMT的时间间隔
+ (NSTimeInterval)timeIntervalSinceReferenceDate;
*/
//秒
// - (NSTimeInterval)timeIntervalSinceNow;
// 以当前时间(Now)为基准时间,返回实例保存的时间与当前时间(Now)的时间间隔
相关文章推荐
- 计算指定时间与当前的时间差 比如,3天前、10分钟前
- 计算指定时间与当前的时间差 比如,3天前、10分钟前
- 计算指定时间与当前的时间差 比如,3天前、10分钟前
- 计算指定时间与当前的时间差 比如,3天前、10分钟前
- 计算指定时间与当前的时间差 比如,3天前、10分钟前
- 计算指定时间与当前的时间差 比如,3天前、10分钟前
- IOS 计算时间代码(比如,3天前、10分钟前)
- 计算当前时间和指定时间的时间差
- 计算指定时间与当前的时间差
- 计算2017年11月11日 11时 11分 11秒 距离当前日期的时间差, 并以指定的格式(天/时/分/秒)的形式显示.
- 计算指定时间与当前的时间差
- 计算指定时间与当前的时间差
- 计算指定时间与当前的时间差
- jquery根据指定的时间来跟当前时间比较计算倒计时
- iOS规范化时间格式,object-C计算指定时间与当前的时间差
- 计算设定时间点与当前时间差的代码
- C# 当前时间:起始日,周,月,季度,半年的计算方法
- 计算设定时间点与当前时间差的代码
- 根据指定两个日期计算出这些时间内有多少天是周末 php程序函数代码
- Flex4之打印日志,比如某函数的开始和结束时间,用ms计算