你好,我是iPhone开发的新手,我正在制作一个应用程序,它可以从像2012-02-23T00:14:13.853
这样的web服务接收日期和时间。然后,我需要根据当前日期显示信息的年龄。
我想要的是一个相对的时间,比如在Facebook或Twitter上,例如1天前、2小时前等。
那么,我们应该如何将日期转换成这样的格式呢?
您可以使用上面Shubhank的代码,但您必须首先将字符串转换为NSDate。如果你不知道如何做到这一点:
NSString *receivedString = yourStringFromWebservice;
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy'-'MM'-'dd'T'HH':'mm':'ss'Z'"];
NSDate *receivedDate = [formatter dateFromString:receivedString];
[formatter release];
然后,您可以在上面的代码中使用生成的NSDate。
您可以获得类似的时间间隔差异
NSTimeInterval interval = [[NSDate date] timeIntervalSinceDate:dateFromWebService];
NSLog(@" interval %f",interval);
这会给你以秒为单位的时差。。然后你可以进行简单的数学运算,将其转换为小时。。天。。和月份。。etc