IOS 计算时间差
原文地址: http://my.oschina.net/gexun/blog/351443?p={ {currentPage-1}}
//计算上报时间差
`
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];`
`
[formatter setDateFormat:@`"YYYY-MM-dd HH
ss"
];
//设置你想要的格式,hh与HH的区别:分别表示12小时制,24小时制
`
NSTimeZone* timeZone = [NSTimeZone timeZoneWithName:@`"Asia/Beijing"
];
`
[formatter setTimeZone:timeZone];`
`
NSDate *datenow = [NSDate date];`
`
//设置一个字符串的时间`
`
NSMutableString *datestring = [NSMutableString stringWithFormat:@`"%@"
,20141202052740];
`
//注意 如果20141202052740必须是数字,如果是UNIX时间,不需要下面的插入字符串。`
`
[datestring insertString:@`"-"
atIndex:4];
`
[datestring insertString:@`"-"
atIndex:7];
`
[datestring insertString:@`" "
atIndex:10];
`
[datestring insertString:@`":"
atIndex:13];
`
[datestring insertString:@`":"
atIndex:16];
`
NSLog(@`"datestring==%@"
,datestring);
`
NSDateFormatter * dm = [[NSDateFormatter alloc]init];`
`
//指定输出的格式 这里格式必须是和上面定义字符串的格式相同,否则输出空`
`
[dm setDateFormat:@`"YYYY-MM-dd HH
ss"
];
`
NSDate * newdate = [dm dateFromString:datestring];`
`
long`dd = (
long
)[datenow timeIntervalSince1970] - [newdate timeIntervalSince1970];
`
NSString *timeString=@`""
;
`
if`(dd/3600<1)
`
{`
`
timeString = [NSString stringWithFormat:@`"%ld"
, dd/60];
`
timeString=[NSString stringWithFormat:@`"%@分钟前"
, timeString];
`
}`
`
if`(dd/3600>1&&dd/86400<1)
`
{`
`
timeString = [NSString stringWithFormat:@`"%ld"
, dd/3600];
`
timeString=[NSString stringWithFormat:@`"%@小时前"
, timeString];
`
}`
`
if`(dd/86400>1)
`
{`
`
timeString = [NSString stringWithFormat:@`"%ld"
, dd/86400];
`
timeString=[NSString stringWithFormat:@`"%@天前"
, timeString];
`
}`
`
NSLog(@`"=====%@"
,timeString);
``
还没有评论,来说两句吧...