如何在
中检索当前日期和时间UTC格式基于国家/地区代码?
例如,阿富汗有ISO(国家代码)AF
。
如何在AF
中传递此参数DateTime.UtcNow
?
答案 0 :(得分:1)
如上所述,UTC是时区,并非特定于任何国家/地区。事实上,即使在线路交叉的英国,只有一半的年份与UTC相同,其余的是英国夏令时。
但如果您的问题是如何将阿富汗时间转变为UTC,但您目前尚未设置为该时区,那么
// you can get all the timezones your system supports using TimeZoneInfo.GetSystemTimeZones()
var afghanTimeZone = TimeZoneInfo.FindSystemTimeZoneById("Afghanistan Standard Time");
var utcTime = TimeZoneInfo.ConvertTimeToUtc(new DateTime(1970, 1, 1), afghanTimeZone);
时区与国家/地区一对一不匹配,即使在一个国家/地区内也可能存在多个国家/地区,因此仅国家/地区代码不会削减它。
答案 1 :(得分:0)
UTC代表Universal Time Co-ordinated。无论时区或国家如何,它的全部意义在于始终相同。目前,在英国当地时间是上午9:01,因为我打字,但是UTC的时间是8:01。
请参阅https://www.timeanddate.com/time/aboututc.html
最好以UTC格式存储所有时间戳,然后将它们转换为本地时间进行显示。
所以,要回答你的问题,你不能这样做。国家和时区对UTC毫无意义。
希望这有帮助,
亚当。