问题描述
我打电话其中标准化给定的地址的服务,也给出结果在UTC偏移量(例如:-5:00等)的时区。
有没有在C#中的函数,该函数在UTC的timezoneoffset的,计算时区(三个字符,如CST,EST,PST)?
没有。这是在任何语言的要求是不可能的,这是因为:
-
许多不同的时区共享相同的偏移量。
-
有是的时区缩写没有标准。有很多的重叠和模糊性。例如,CST具有我知道的至少5种不同的含义。
-
即使你限制自己到美国,你不能抵消可靠区分。例如,-5可以EST或它可以被CDT。
甚至还有一小时,一年在那里EST和CDT都在完全相同的时间效应。例如,这发生在2014年11月2日,在1:00 AM EST和1:00 AM CDT的的同时,都使用UTC-5偏移
Unless the service is returning the offset for a specific date and time, then it could be lying to you. Perhaps it is returning the current offset, but that is not fixed. The same location can cycle through multiple different offsets.
IMO, Services like that should not attempt to resolve an offset, but should instead return a time zone identifier, such as America/New_York
.
You should probably read the timezone tag wiki, and you may also be interested in this post.
这篇关于有没有什么方法交付其发生在UTC的timezoneoffset的,计算时区在C#中?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!