gpt4 book ai didi

ios - NSDateComponents 中的错误日期

转载 作者:行者123 更新时间:2023-11-28 22:19:37 26 4
gpt4 key购买 nike

我正在创建一个 NSDate。为什么一天总是少一天?

这是代码:

NSDate *today = [NSDate date];
NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDateComponents *comps = [gregorian components:NSCalendarUnitDay | NSCalendarUnitMonth | NSCalendarUnitYear fromDate:today];
[comps setDay:31];
NSDate *lastDayOfMonth = [gregorian dateFromComponents:comps];
NSLog(@"last %@",lastDayOfMonth);

这是日志:

last 2013-12-30 23:00:00 +0000

结果是 30 而不是 31

最佳答案

last 2013-12-30 23:00:00 +0000

这是因为您显示的时间为格林威治标准时间 - 即伦敦时间。但你不在伦敦。我不知道你在哪里,但如果你仔细想想,你会发现伦敦 30 日 2300 时,你所在的地方是 31 日午夜,这正是你所要求的。

关于ios - NSDateComponents 中的错误日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20765433/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com