C# - 以分钟为单位计算时差

P S*_*cki 3 .net c# time datetime date-difference

我有以下代码:

DateTime start = DateTime.Now;
Thread.Sleep(60000);
DateTime end = DateTime.Now;
Run Code Online (Sandbox Code Playgroud)

我想计算开始和结束之间的分钟差异.我该怎么办呢?对于上面的示例,结果应为"1".

提前致谢!

Mig*_*oom 8

您可以使用该Subtract方法并使用TotalMinutes.

var result = end.Subtract(start).TotalMinutes;
Run Code Online (Sandbox Code Playgroud)

如果你需要它而没有分数分钟,只需将它作为一个int.

var result = (int)end.Subtract(start).TotalMinutes;
Run Code Online (Sandbox Code Playgroud)

看一看在MSDN了解更多信息:.减去TotalMinutes


小智 7

我认为更优雅的方法是使用秒表类

Stopwatch stopWatch = new Stopwatch();
stopWatch.Start();
Thread.Sleep(10000);
stopWatch.Stop();
// Get the elapsed time as a TimeSpan value.
TimeSpan ts = stopWatch.Elapsed;
Run Code Online (Sandbox Code Playgroud)