【问题标题】:How can I determine if local time is adjusted for daylight savings?如何确定本地时间是否针对夏令时进行了调整?
【发布时间】:2012-10-16 05:55:10
【问题描述】:

是否可以知道当地时间是否已调整夏令时?

是否可以知道机器上的当地时间是否正确?

我猜是很奇怪的愚蠢问题(假设没有互联网连接),但你永远不知道!

【问题讨论】:

  • 如果你有不止一个,你可以比较它们。假设您不只是看一眼手表。 :)
  • 谢谢 Tony.. 你能详细说明一下吗?
  • 互联网访问无关紧要。你正在做的是得到一个你可以信任的时间来检查你没有的时间。因此,要比较您在网络上需要一台您可以信任的机器的时间。如果你有一个,你可以设置一个时间服务器,再也不用担心这些东西了......
  • 谢谢.. 我喜欢这个主意.. 可信时间服务器 + TimeZoneInfo.Local.IsDaylightSavingsTime(DateTime.Now) 正如 Reed 建议的那样..

标签: c# date time dst


【解决方案1】:

您可以使用TimeZoneInfo.Local.IsDaylightSavingsTime(DateTime.Now)查看当前时间是否正在调整。

【讨论】:

  • 谢谢 Reed.. 但那“表示指定的日期和时间是否在当前 TimeZoneInfo 对象的时区的夏令时范围内。”(msdn).. 所以它没有'不真的告诉我它是否调整了吗??
  • @user441660 如果您想了解当前时间是否已调整 - 这应该会告诉您(因为我正在喂它DateTime.Now)。此方法可让您检查是否应调整任何特定日期 - 如果您通过“现在”,您可以检查当前时间是否设置为调整。
【解决方案2】:

我发现大多数 DST 实现在计算时间时会从 GMT 偏移量增加/减少一个小时,例如,澳大利亚悉尼将是 +10 GMT 没有 DST 和 +11 GMT 与 DST

【讨论】:

    猜你喜欢
    • 2016-12-23
    • 1970-01-01
    • 2021-07-17
    • 2019-08-31
    • 2011-03-19
    • 2016-07-30
    • 2020-02-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多