我需要从当前时间减少用户输入时间我应该怎么做?C# 窗口
前任-
- 当前时间 - 1:05:10
输入时间---- 1:03:05
我需要-------- 0:02:05
提前致谢
从本地时间开始:
Text = DateTime.Now.Subtract(inputTime).ToString("hh:mm:ss");
从UTC:
Text = DateTime.UtcNow.Subtract(inputTime).ToString("hh:mm:ss");
为什么不写一个静态方法我知道这行得通,它会处理你需要做的事情
我已经展示了如何调用它的示例,但您将传入实际的 DateTime startTime 和 endTime 值。TimeSpan
会给你一个更准确的时间
public static TimeSpan GetTimeSpan(DateTime startTime, DateTime endTime)
{
TimeSpan totTime = new TimeSpan();
startTime = Convert.ToDateTime(startTime.TimeOfDay.ToString());
endTime = Convert.ToDateTime(endTime.TimeOfDay.ToString());
totTime = (TimeSpan)(endTime - startTime);
return totTime;
}
调用方法的用法 替换转换代码并分配实际的 DateTime 值,DateTime.Now for inputTime and when Ending use DateTime.Now to assign endInputTime
我已将此用作测试示例,向您展示如何使用TimeSpan
var inputTime = Convert.ToDateTime("1:03:05");
var endInputTime = Convert.ToDateTime("1:05:10");
var newTimeSpan = GetTimeSpan(inputTime, endInputTime);
产量 -{00:02:05}
Text = DateTime.Now.Subtract(inputTime).ToString();