无论用户的本地时区设置如何,使用 C# (.NET 2.0) 我都需要确定东部时区的时间(DateTime 对象)。
我知道这些方法,但似乎没有明显的方法来获取与用户所在时区不同的时区的 DateTime 对象。
DateTime.Now
DateTime.UtcNow
TimeZone.CurrentTimeZone
当然,解决方案需要了解夏令时。
最佳答案
在 .NET 3.5 中,有 TimeZoneInfo
,它提供了很多这方面的功能; 2.0SP1 有 DateTimeOffset
, 但这要受限得多。
获取 UtcNow
并添加固定偏移量是工作的一部分,但不支持 DST。
所以在 3.5 中,我认为你可以这样做:
DateTime eastern = TimeZoneInfo.ConvertTimeBySystemTimeZoneId(
DateTime.UtcNow, "Eastern Standard Time");
但这在 2.0 中根本不存在;对不起。
关于c# - 无论本地时区如何,获取另一个时区的日期时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/441109/