gpt4 book ai didi

c# - 如何在时区之间转换时间(UTC 到 EDT)?

转载 作者:可可西里 更新时间:2023-11-01 08:55:01 28 4
gpt4 key购买 nike

我需要一个通用函数来将 UTC 时间转换为 EDT。我在印度有一台服务器。其中的应用程序需要将 EDT 时间用于所有时间目的。

我正在使用 .NET 3.5。

我在其他论坛上找到的。

DateTime eastern = TimeZoneInfo.ConvertTimeBySystemTimeZoneId(
DateTime.UtcNow, "Eastern Standard Time");

当我尝试使用“Easten Daylight Time”时出现错误。

"The time zone ID 'Eastern Daylight Time' was not found on the local computer".

请帮助解决此问题或任何其他解决方案。

最佳答案

东部夏令时不是“完整”时区的名称 - 它是“半”时区,实际上总是比 UTC 晚 4 小时。 (这可能有适当的术语,但我不知道。)

为什么要在没有应用夏令时的时间使用 EDT?如果您想要一个始终与 UTC 具有相同偏移量的自定义时区,请使用 TimeZoneInfo.CreateCustomTimeZone .

请注意,如果您使用东部标准时区 ( TimeZoneInfo.FindSystemTimeZoneById("Eastern Standard Time") ),那么夏令时仍将适当应用(即在夏季)。

例如:

TimeZoneInfo tzi = TimeZoneInfo.FindSystemTimeZoneById("Eastern Standard Time");

// Prints True
Console.WriteLine(tzi.IsDaylightSavingTime(new DateTime(2009, 6, 1)));
// Prints False
Console.WriteLine(tzi.IsDaylightSavingTime(new DateTime(2009, 1, 1)));

关于c# - 如何在时区之间转换时间(UTC 到 EDT)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/964894/

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