-1

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

前任-

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

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

提前致谢

4

3 回答 3

1

从本地时间开始:

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

从UTC:

Text = DateTime.UtcNow.Subtract(inputTime).ToString("hh:mm:ss");
于 2013-02-13T19:05:05.800 回答
0

为什么不写一个静态方法我知道这行得通,它会处理你需要做的事情

我已经展示了如何调用它的示例,但您将传入实际的 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}

于 2013-02-13T19:53:43.600 回答
0
Text = DateTime.Now.Subtract(inputTime).ToString();
于 2013-02-13T18:55:47.253 回答