将南非时间转换为世界时间

时间:2012-09-05 08:09:21

标签: c# datetime timezone

我希望将南非时间转变为世界时间。我有以下可用值:时区(即布鲁塞尔为60)和偏移= 60。

我试过这个:

var newDate = DateTime.Now.AddMinutes(60);

但它没有给我正确的布鲁塞尔日期时间值。

3 个答案:

答案 0 :(得分:1)

根据MSDN page你可以使用这样的东西(记得选择正确的时区):

DateTime hwTime = DateTime.Now;
try
{
   TimeZoneInfo hwZone = TimeZoneInfo.FindSystemTimeZoneById("Hawaiian Standard Time");
   Console.WriteLine("{0} {1} is {2} local time.", 
           hwTime, 
           hwZone.IsDaylightSavingTime(hwTime) ? hwZone.DaylightName : hwZone.StandardName, 
           TimeZoneInfo.ConvertTime(hwTime, hwZone, TimeZoneInfo.Local));
}
catch (TimeZoneNotFoundException)
{
   Console.WriteLine("The registry does not define the Hawaiian Standard Time zone.");
}                           
catch (InvalidTimeZoneException)
{
   Console.WriteLine("Registry data on the Hawaiian STandard Time zone has been corrupted.");
}

答案 1 :(得分:1)

您可以使用DateTime.ToUniversalTime()将任意DateTime转换为通用时间(UTC)。由于布鲁塞尔是提前一小时,加上一小时(如果他们在夏令时)或两小时,否则。

答案 2 :(得分:0)