如何获取另一个UTC位置的时间或至少在计算机中设置了什么UTC时间值,以便我可以增加/减少当前时间并获得我想要的?如何在.NET中以编程方式获取其他位置的时间?
我的具体问题是:
我在一个特定的位置,我想知道的是什么时候在英国。
如何获取另一个UTC位置的时间或至少在计算机中设置了什么UTC时间值,以便我可以增加/减少当前时间并获得我想要的?如何在.NET中以编程方式获取其他位置的时间?
我的具体问题是:
我在一个特定的位置,我想知道的是什么时候在英国。
我终于找到了答案。 This article很好地解释了TimeZoneInfo
和TimeZone
,它有一些在不同时区之间转换的例子。
所有你需要知道的是时间区的ID要转换到。
一个例子(从网站拍摄):
DateTimeOffset nowDateTime = DateTimeOffset.Now;
DateTimeOffset newDateTime = TimeZoneInfo.ConvertTime(
nowDateTime,
TimeZoneInfo.FindSystemTimeZoneById("Hawaiian Standard Time"));
Console.WriteLine("Now: {0}", nowDateTime);
Console.WriteLine("Now in Hawaii: {0}", newDateTime);
打印
Now: 3/5/2011 6:30:48 PM -08:00
Now in Hawaii: 3/5/2011 4:30:48 PM -10:00
要获得所有的ID的列表,您可以:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones
TimeZoneInfo.GetSystemTimeZones();
一个有效的列表似乎在这里:http://stackoverflow.com/questions/ 14149346 /什么值应该我传入时区info-findsystemtimezonebyidstring#24460750与'GMT标准时间'显然是英国的一个(http://stackoverflow.com/questions/4034923/how-to-represent -the电流-UK-时间#4035002)。 – SharpC 2016-01-24 12:48:15
可能检查出[从另一个时区的日期时间检索]另一篇文章(http://stackoverflow.com/questions/246498/creating-a-datetime-in- a-specific-time-zone-in-c-fx-3-5) – 2011-03-05 22:55:55
@Brad让我看看它... – 2011-03-05 22:59:04