【问题标题】:Why NSCalendar date differ from NSDateComponents components date?为什么 NSCalendar 日期与 NSDateComponents 组件日期不同?
【发布时间】:2011-12-01 07:36:09
【问题描述】:

知道为什么此代码输出“2011-11-30 23:00:00 +0000”而不是“2011-12-01 00:00:00 +0000”

NSDateComponents *minDateComponents = [[NSDateComponents alloc] init];
[minDateComponents setYear:2011];
[minDateComponents setMonth:12];
[minDateComponents setDay:1];
[minDateComponents setHour:00];
[minDateComponents setMinute:00];
[minDateComponents setSecond:0];
[minDateComponents setTimeZone:nil];

NSLog(@"%@",[[NSCalendar currentCalendar] dateFromComponents:minDateComponents]);

【问题讨论】:

    标签: ios nsdate nsdatecomponent


    【解决方案1】:

    您需要设置 NSDateComponent timeZone 属性以匹配您的 NSCalendar timeZone 属性。例如,您可以将它们都设置为

    [NSTimeZone systemTimeZone];
    

    或

    [NSTimeZone localTimeZone];
    

    【讨论】:

      猜你喜欢
      • 2011-12-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-18
      • 2017-08-03
      • 2019-07-23
      • 1970-01-01
      • 2011-10-20
      相关资源
      最近更新 更多