如何获得以小时为单位的时间百分比
本文关键字:时间 百分比 为单位 小时 何获得 | 更新日期: 2023-09-27 18:00:58
我正在使用asp.net c#开发一个web应用程序。我需要得到时间的百分比。我没有找到实现这一目标的正确方法。我有来自数据库的TotalHours。我需要计算总小时数的80%。
我们将不胜感激。谢谢
//This is how I am getting the TotalTime
TimeSpan TotalTime = TimeSpan.Parse(totalhours);
if(TotalTime != null)
{
TimeSpan Percentage= ( TotalTime* 80 ) / 100;
// here I need to get correct percentage in hrs
// If TotalTime is 10 hrs then Percentage should be 8 hrs
}
TimeSpan TotalTime = TimeSpan.Parse("10:00:00");
if (TotalTime != null)
{
var ticks = ((TotalTime.Ticks * 80) / 100);
TimeSpan Percentage = new TimeSpan(ticks);
Console.WriteLine(Percentage); // 8 hours
}
TimeSpan totalTime = new TimeSpan(10, 0, 0);
TimeSpan percentage = TimeSpan.FromMilliseconds((totalTime.TotalMilliseconds * 80) / 100);
从totalTime中获取总毫秒,计算并将其从毫秒转换回TimeSpan
。
如果你对工作时间感到满意,只需更改:
TimeSpan percentage = TimeSpan.FromHours((totalTime.TotalHours * 80) / 100);
TimeSpan
的TotalHours
属性以double
的形式返回总小时数。这就是为什么你可以计算出你的TimeSpan
样的80%;
double Percentage = (TotalTime.TotalHours * 4) / 5;