C# 从输入时间减少当前时间

C# 从输入时间减少当前时间,c#,time,window,C#,Time,Window,我需要从当前时间减少用户输入时间我该怎么做? C#窗 前 当前时间-1:05:10 输入时间----1:03:05 我需要------0:02:05 提前感谢当地时间: Text = DateTime.Now.Subtract(inputTime).ToString(); Text = DateTime.Now.Subtract(inputTime).ToString("hh:mm:ss"); 来自UTC: Text = DateTime.UtcNow.Subtract(inputTim

我需要从当前时间减少用户输入时间我该怎么做? C#窗

  • 当前时间-1:05:10
  • 输入时间----1:03:05

  • 我需要------0:02:05

提前感谢

当地时间:

Text = DateTime.Now.Subtract(inputTime).ToString();
Text = DateTime.Now.Subtract(inputTime).ToString("hh:mm:ss");
来自UTC:

Text = DateTime.UtcNow.Subtract(inputTime).ToString("hh:mm:ss");

为什么不写一个静态方法呢?我知道这是可行的,它可以处理您需要做的事情

我已经展示了一个如何调用它的示例,但是您将传入实际的DateTime startTime和endTime值<代码>时间跨度将为您提供更准确的时间

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指定实际日期时间值。现在为inputTime,结束时使用DateTime。现在为指定endInputTime
我将此作为一个测试示例,向您展示如何使用
TimeSpan

var inputTime = Convert.ToDateTime("1:03:05");
var endInputTime = Convert.ToDateTime("1:05:10");
var newTimeSpan = GetTimeSpan(inputTime, endInputTime);
收益率-
{00:02:05}