当iPad采用24小时格式时,NSDateFormatter会产生不同的结果
我一直在思考为什么会发生这种情况,但我不知道。如果运行以下代码:当iPad采用24小时格式时,NSDateFormatter会产生不同的结果,ipad,ios,nsdateformatter,Ipad,Ios,Nsdateformatter,我一直在思考为什么会发生这种情况,但我不知道。如果运行以下代码: NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; [formatter setDateFormat:@"dd-MM-yyyy|HH:mm"]; NSDate *date = [formatter dateFromString:@"18-01-2011|06:00"]; NSDate *today = [[NSDate alloc] init]; NSLog(
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"dd-MM-yyyy|HH:mm"];
NSDate *date = [formatter dateFromString:@"18-01-2011|06:00"];
NSDate *today = [[NSDate alloc] init];
NSLog(@"date is: %@, today is %@", date, today);
如果用户配置了24小时时钟,则上面打印的日期是:2011-01-18 11:00:00+0000,今天是2011-01-19 00:56:56+0000
。但是,当用户选择12小时时钟时,上面打印的日期为:(空),今天是2011-01-19 12:58:51 a.m.+0000
我做错了什么?是否支持格式化程序独立于区域设置?请帮忙 解释NSDateFormatter的一个问题以及可能适用于您的案例的24小时时间设置。感谢aBitObvius,我终于了解了它的工作原理!把它作为答案贴出来,这样我就可以投票了:)我怎么把06:00改成06:00呢?你可能想看看