gpt4 book ai didi

c# - 在 C# 中使用 TimeSpans 计算平均时间

转载 作者:太空宇宙 更新时间:2023-11-03 21:23:07 25 4
gpt4 key购买 nike

我正在尝试通过开始时间减去结束时间然后将差值除以计数来计算平均时间。在我的例子中,计数是扫描的产品。我想使用这种格式“HH:mm:ss”以字符串形式输出结果。我一直在玩我的代码,但我无法让它工作。

这是我的变量:

    private DateTime woStartTime;
private DateTime woEndTime;
private TimeSpan difference;
private long average;

这是开始时间的值

    woStartTime = DateTime.Now;

这是我计算平均时间的方法

 public void Calculate_Average_Time()
{
try
{
woEndTime = DateTime.Now;
difference = woEndTime - woStartTime;
long dTime = Convert.ToInt64(difference.Ticks);
average = dTime / Scanned;
DateTime aTimeS = Convert.ToDateTime((average / 86400M).ToString("HH:mm:ss", CultureInfo.InvariantCulture));
lblError.Text = aTimeS.ToString(); // display to verify results
}
catch(Exception ex)
{
MessageBox.Show(ex.ToString());
}
}

我不断收到异常错误:字符串未被识别为有效的日期时间。有一个从索引 0 开始的未知单词。

我做错了什么?请帮忙。

最佳答案

您根本不应该使用 DateTime。使用 System.Diagnostics.Stopwatch相反,当您想准确测量耗时时。

无论如何,我会根据DateTime 来回答您的问题,希望这对您将来有所帮助:) 您不需要先转换为字符串,然后再转换为DateTime .使用

TimeSpan aTimeS = new TimeSpan(average);

这将创建一个新的 TimeSpan 具有指定的滴答数。注意使用TimeSpan而不是DateTimeTimeSpan代表一个时间量,而DateTime是一个特定的点及时。

关于c# - 在 C# 中使用 TimeSpans 计算平均时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29262533/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com