我在数据库中有一个小时字段,如1.4、1.5、1.7,需要将其转换回HH:MM。最简单的方法是什么?
double value;
TimeSpan t = TimeSpan.FromHours(value);
例子:
Console.WriteLine(TimeSpan.FromHours(1.4)); // prints 01:24:00 to the console.
HH(小时)数字是小数点前的数字。
要获取分钟数,请减去整数部分,这样您只有小数点后的数量,然后将该分数乘以60即可得到分钟数。
我发现被采纳的答案中的TimeSpan方法适用于小于24小时(1天)的情况。
DateTime方法适合处理大于24小时的时间,而不涉及天数(也没有前导0):
public string DecHrsToHHMM(double dHours)
{
DateTime dTime = new DateTime().AddHours(dHours);
return dTime.ToString("H:mm");
}
Convert.ToDateTime(float)