Подтвердить что ты не робот

Преобразование поплавка в промежуток времени

Есть ли простой способ взять значение float, представляющее дробные часы, и преобразовать их в объект TimeSpan и наоборот? Например:

float oneAndAHalfHours = 1.5f;
float twoHours = 2f;
float threeHoursAndFifteenMinutes = 3.25f;
float oneDayAndTwoHoursAndFortyFiveMinutes = 26.75f;

TimeSpan myTimeSpan = ConvertToTimeSpan(oneAndAHalfHours); // Should return a TimeSpan Object

Любые идеи?

4b9b3361

Ответ 1

Вы хотите метод FromHours.

Это берет double (а не float) и возвращает TimeSpan:

double hours = 1.5;
TimeSpan interval = TimeSpan.FromHours(hours);

Чтобы получить общее количество часов из TimeSpan используйте свойство TotalHours:

TimeSpan interval = new TimeSpan(1, 15, 42, 45, 750);
double hours = interval.TotalHours;