【发布时间】:2014-06-27 19:54:36
【问题描述】:
我正在尝试在我的闹钟应用中实施正确的 DST 调整处理。因此,我正在阅读 DYNAMIC_TIME_ZONE_INFORMATION 的描述,用于通过 GetTimeZoneInformationForYear API 检索当前的 DST 调整信息,其中包含以下内容:
DaylightDate:
包含日期和本地的SYSTEMTIME 结构 从标准时间过渡到夏令时的时间 在此操作系统上发生。如果时区不支持 夏令时或调用者需要禁用夏令时 时间,SYSTEMTIME 结构中的 wMonth 成员必须为零。如果 此日期已指定,此结构中的 StandardDate 成员必须 也被指定。否则,系统假定时区数据为 无效,不会应用任何更改。选择正确的日期 月份,将 wYear 成员设置为零,wHour 和 wMinute 成员 到过渡时间,wDayOfWeek 成员到适当的 weekday,以及 wDay 成员来指示发生的那一天 一个月内的第几周(1 到 5,其中 5 表示最后一个 如果一周中的那一天没有发生,则在一个月内发生 5 次)。
如果 wYear 成员不为零,则过渡日期为 绝对;它只会发生一次。否则就是亲戚 每年发生的日期。
我还在检查世界各地观察到的current DST adjustments,如果相对 DST 调整看起来很简单,我不太清楚如何通过DYNAMIC_TIME_ZONE_INFORMATION 传达以下调整——只需一个绝对的一个月和一天。
例如:
Egypt
-----
DST Start: May 15
DST End: Last Friday September
或者这个:
Iran
----
DST Start: March 21–22
DST End: September 21–22
有人知道怎么做吗?
【问题讨论】:
-
埃及是值得注意的,他们将在今年的斋月期间暂停 DST。有人上班要迟到了。
-
为什么要投票结束?介意先解释一下吗?
-
你没有问一个很明确的问题。您说过“我正在尝试实施正确的 DST 调整处理......”和“有人知道该怎么做吗?” - 但其余的并没有添加任何内容来澄清您想知道的内容。请编辑您的问题以进一步扩展问题本身。谢谢。
-
@MattJohnson:对不起,除了我在上面发布的内容之外,我不知道如何描述这个问题。这开始听起来像是一个语言论坛,其中包含如何提出我的问题的所有规则......
-
我不想强加任何规则。我正在阅读您的整个问题,但我根本不知道您在问什么。如果我能理解您想知道的内容,我将很乐意提供帮助。我对这个话题很流利,但我不能把我的整个大脑都扔在一个答案上。您能否指导我了解您想了解的具体内容?