我需要知道负责EST和EDT的TimeZoneinfo,即如果EST时间适用,那么它应该给我EST时间,当EDT适用时,我应该得到EDT时间。
在C#中可以使用以下方法吗?
TimeZoneInfo.ConvertTimeBySystemTimeZoneId(DateTime.UtcNow,“东方标准时间”)
提前谢谢。
发布于 2011-06-27 19:03:55
这个时区概述可能会给你一些有用的背景。ConvertTimeBySystemTimeZoneId的文档显示
在执行转换时,ConvertTimeBySystemTimeZoneId方法将在destinationTimeZoneId时区应用任何有效的调整规则。
调整规则是白天时间的定义,所以是的,使用“东方标准时间”作为ID,当它应用到东部夏令时,你就会得到它。
如果要执行几次转换,可以使用FindSystemTimeZoneById方法检索TimeZoneInfo对象。FindSystemTimeZoneById的文档还解释了在注册表中可以找到这些ID的位置。
当然,只有当时区id在注册表中时,ConvertTimeBySystemTimeZoneId和FindSystemTimeZoneById才能工作(但是东方标准时间应该在那里!)此外,当政府发布命令时,附加规则可能会发生变化,因此适用的调整规则可能取决于系统上时区的最新定义。
https://stackoverflow.com/questions/6496332
复制相似问题