在CoreFoundation中查找从标准到夏令时的过渡日期/时间,反之亦然

时间:2013-02-22 15:08:53

标签: c++ macos datetime timezone core-foundation

我正在尝试使用CoreFoundation复制Windows函数GetTimeZoneInformation的功能,该函数填充TIME_ZONE_INFORMATION结构。我已经创建了一个函数,将CFAbsoluteTimeCFTimeZoneRef一起转换为SYSTEMTIME的等价物,但还有其他一些我无法弄清楚的事情。例如:

  • StandardDateDaylightDate:我已使用CFTimeZoneGetNextDaylightSavingTimeTransition函数查找下一个转换,CFTimeZoneIsDaylightSavingTime确定这是哪个转换,但是从{{1}开始需要两个日期,如何在下一次转换后找到过渡
  • 同样,TIME_ZONE_INFORMATION - 如果我们目前处于DST状态,我可以使用DaylightBias来查找偏移量,但如果我们目前没有使用DST,则此值会变为零。我知道它总是-60,但我希望这个功能能够完全忠实于Windows功能。

有没有人知道这个问题的好方法?

0 个答案:

没有答案