如何以分钟为单位(以C#为单位)获取本地时间和UTC时间之间的差异?
答案 0 :(得分:22)
使用TimeZoneInfo
:
TimeSpan delta = TimeZoneInfo.Local.GetUtcOffset();
double utcMinuteOffset = delta.TotalMinutes;
答案 1 :(得分:7)
这应该可以满足您的需求。
(DateTime.UtcNow - DateTime.Now).TotalMinutes;
您也可以找到.ToUniversalTime
DateTime函数。
答案 2 :(得分:6)
又一个版本:
DateTimeOffset.Now.Offset.TotalMinutes
答案 3 :(得分:1)
Response.Write((DateTime.Now - DateTime.UtcNow).TotalMinutes);
答案 4 :(得分:0)
有关详细信息,请参阅this 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);
答案 5 :(得分:0)
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());