我有一些代码可以在iOS 5中完美运行,但在iOS 6中会中断。
这是TimeIntervalSinceDate方法......
我发现其他人遇到了这个问题,但没有解决方案:
这是我的代码:
NSString *origDate = @"2012-11-29 19:43:30";
NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setFormatterBehavior:NSDateFormatterBehavior10_4];
[df setDateFormat:@"YYYY-MM-dd HH:mm:ss"];
NSDate *convertedDate = [df dateFromString:origDate];
[df release];
NSDate* sourceDate = [NSDate date];
NSLog(@"sourceDate: %@", sourceDate);
NSLog(@"convertedDate: %@", convertedDate);
NSTimeInterval ti = [ sourceDate timeIntervalSinceDate:convertedDate];
NSLog(@"interval double: %f", ti);
在iOS 5中,我将其作为值:
interval double: 711.113610
在iOS 6中我得到:
interval double: 31623151.242078
有什么建议吗?
谢谢
答案 0 :(得分:3)
了解Apple对Date Formatters的评价:
常见的错误是使用 YYYY。 yyyy指定日历年,而YYYY指定年份 (“年度周”),用于ISO年 - 周历。多数情况 案例,yyyy和YYYY产生相同的数字,但它们可能是 不同。通常,您应该使用日历年。
答案 1 :(得分:0)