UTC补偿以分钟为单位
如何以分钟为单位(以C#为单位)获取本地时间和UTC时间之间的差异?
使用TimeZoneInfo
:
TimeSpan delta = TimeZoneInfo.Local.GetUtcOffset(); double utcMinuteOffset = delta.TotalMinutes;
这应该给你你需要的东西。
(DateTime.UtcNow - DateTime.Now).TotalMinutes;
您也可以找到.ToUniversalTime
DateTime函数。
又一个版本:
DateTimeOffset.Now.Offset.TotalMinutes
Response.Write((DateTime.Now - DateTime.UtcNow).TotalMinutes);
DateTime localDt = DateTime.Now; DateTime utcDt = DateTime.UtcNow; TimeSpan localUtcDiff = utcDt.Subtract(localDt); Console.WriteLine("The difference in minutes between local time and UTC time is " + localUtcDiff.TotalMinutes.ToString());
有关完整详细信息,请参阅此MSDN artice 。 本文末尾的代码示例明确给出了获取本地和UTC时间之间差异的代码。
对于那些不想点击链接的人来说,这是该代码的摘录:
// Find difference between Date.Now and Date.UtcNow date1 = DateTime.Now; date2 = DateTime.UtcNow; difference = date1 - date2; Console.WriteLine("{0} - {1} = {2}", date1, date2, difference);