我想计算Twitter和Facebook的时间跨度。

对于Twitter:-2011年7月19日星期二11:08:46 +0000

对于facebook:-2011-07-18T15:25:09 + 0000

我想将其转换为1小时前,60分钟前,2薄荷前等。

以及如何比较这些时间值以进行时间排序。

请提供任何示例代码或任何类引用链接,以便我可以这样做。

最佳答案

我正在做类似的事情。

首先,我将使用NSDateFormatter的setDateFormat函数将Twitter和Facebook给出的时间转换为NSDate。然后,您可以使用NSDate的timeSinceNow函数进行比较。

以Twitter为例,可能看起来像这样……

NSDateFormatter *dateFM = [[NSDateFormatter alloc] init];
[dateFM setDateFormat:@"EEE MMM dd HH:mm:ss ZZZZ yyyy"];  //set the format that matches Twitter's result…
[dateFM setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]];
[dateFM setTimeZone:[NSTimeZone timeZoneWithName:@"UTC"]];
NSDate *twitterDate = [dateFM dateFromString:CTADateString];
float secondsOfTwitterDateSinceNow = [twitterDate timeIntervalSinceNow];


结果(secondsOfTwitterDateSinceNow)是从现在开始经过的秒数,您可以随意分配(/ 60 =分钟,以此类推...)

10-08 07:46