【发布时间】:2017-03-03 02:10:25
【问题描述】:
如何转换字符串日期@"2016-10-19T12:37:15.0896144+00:00" int second/Min/hour/days/months/year。
我有日期创造价值,即@"2016-10-19T12:37:15.0896144+00:00"
**几秒钟后需要显示“50秒”
几分钟后需要显示“40 分钟”
几个小时后需要显示@"20 hours"
几天后需要显示@“3天”
几个月后需要显示@“4个月”
几年后需要显示@“2年”**
我尝试的是我没有工作的。
NSString* format = @"2016-10-19T12:37:15.0896144+00:00";
// Set up an NSDateFormatter for UTC time zone
NSDateFormatter* formatterUtc = [[NSDateFormatter alloc] init];
[formatterUtc setDateFormat:format];
[formatterUtc setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];
// Cast the input string to NSDate
NSDate* utcDate = [formatterUtc dateFromString:[formatterUtc stringFromDate:timeString]];
// Set up an NSDateFormatter for the device's local time zone
NSDateFormatter* formatterLocal = [[NSDateFormatter alloc] init];
[formatterLocal setDateFormat:format];
[formatterLocal setTimeZone:[NSTimeZone localTimeZone]];
// Create local NSDate with time zone difference
NSDate* localDate = [formatterUtc dateFromString:[formatterLocal stringFromDate:utcDate]];
NSTimeInterval seconds = [[NSDate date] timeIntervalSinceDate:localDate];
我们非常感谢您的意见。
【问题讨论】:
-
查看
NSDateIntervalFormatter和NSDateComponentsFormatter。 -
我使用了 NSDateComponentsFormatter。
标签: ios objective-c datetime nsdate nsdateformatter