Форматирование ElapsedTime в .NET - PullRequest
2 голосов
/ 05 октября 2011

Есть ли способ преобразовать заданное значение в истекшее время с помощью строки форматирования в .NET? Например, если у меня есть значение 4000 и строка форматирования, чтобы быть "mm: ss", я должен получить истекшее время как 66: 40.

Спасибо Datte

Ответы [ 2 ]

3 голосов
/ 05 октября 2011

Вы можете использовать класс TimeSpan , чтобы сделать это проще:

var elapsedTime = TimeSpan.FromSeconds(4000);
var formatted = string.Format("{0}:{1}", (int)elapsedTime.TotalMinutes, elapsedTime.Seconds);

Console.WriteLine(formatted);

(Вы не можете использовать строки стандартного формата для этого, поскольку вы хотите общее количество минут вместо дней / часов / минут / и т. Д.)

0 голосов
/ 05 октября 2011

Используя строки стандартного формата, невозможно определить, какие из строк формата являются итоговыми, а какие - значениями компонентов.Например, должен ли mm производить общее количество минут или компонент минут?И если это общее, как мы узнаем, что такое общее?Это должно быть 66,666666 минут, а не 66.

...