</pre><pre name="code" class="objc">
1.将GMT时间转化系统当前时间
NSDate *lastDate = [NSDate dateFromString:Str withFormat:@"yyyy-MM-dd HH:mm:ss"];
NSTimeZone *zone = [NSTimeZone systemTimeZone];
NSInteger interval = [zone secondsFromGMTForDate:lastDate];
lastDate = [lastDate dateByAddingTimeInterval:interval];
2.获取当前系统时间
NSDate *date = [NSDate date];
NSTimeZone *zone = [NSTimeZone systemTimeZone];
NSInteger interval = [zone secondsFromGMTForDate: date];
NSDate *localeDate = [date dateByAddingTimeInterval: interval];
3.和当前时间比较
+(NSString *)compareCurrentTime:(NSString*) string
{
NSInteger timeInt = [string integerValue];
NSTimeInterval time = timeInt;
NSDate *compareDate = [NSDate dateWithTimeIntervalSince1970:time];
NSTimeInterval timeZoneOffset=[[NSTimeZone systemTimeZone] secondsFromGMT];
NSTimeInterval timeInterval = [compareDate timeIntervalSinceNow];
timeInterval = -timeInterval;
timeInterval += timeZoneOffset;
long temp = 0;
NSString *result;
if (timeInterval < 60) {
result = [NSString stringWithFormat:@"刚刚"];
}
else if((temp = timeInterval/60) <60){
result = [NSString stringWithFormat:@"%ld分前",temp];
}
else if((temp = temp/60) <24){
result = [NSString stringWithFormat:@"%ld小时前",temp];
}
else if((temp = temp/24) <30){
result = [NSString stringWithFormat:@"%ld天前",temp];
}
else if((temp = temp/30) <12){
result = [NSString stringWithFormat:@"%ld月前",temp];
}
else{
temp = temp/12;
result = [NSString stringWithFormat:@"%ld年前",temp];
}
return result;
}