TimeSpan удалить секунды - PullRequest
       7

TimeSpan удалить секунды

2 голосов
/ 25 февраля 2011

Как вы усекаете бит секунд из объекта времени в C #?то есть 15: 37

Я вывожу объект timepan в JavaScript в формате ЧЧ: мм и хочу, чтобы сторона сервера обрабатывала, предоставляя правильный формат вместо клиентских браузеров, может ли это быть сделано без предоставленияэто как строковый объект C # для JavaScript?

Ответы [ 5 ]

19 голосов
/ 25 февраля 2011

Для этого вы можете использовать строку формата:

public string GetTimeSpanAsString(TimeSpan input)
{
    return input.ToString(@"hh\:mm");
}
8 голосов
/ 25 февраля 2011

Вы можете усечь значение 'ticks', которое является ядром TimeSpan:

TimeSpan t1 = TimeSpan.FromHours(1.551);
Console.WriteLine(t1);
TimeSpan t2 = new TimeSpan(t1.Ticks - (t1.Ticks % 600000000));
Console.WriteLine(t2);

Дает:

01:33:03.6000000
01:33:00
1 голос
/ 19 января 2016

Возможно не оптимально, но легко читается:

TimeSpan.FromMinutes((long)duration.TotalMinutes);
0 голосов
/ 25 февраля 2011

Возможно, что-то вроде этого. Это усекает до минут, используя усечение целочисленного деления с последующим умножением на делитель.

return TimeSpan.FromTicks(input.Ticks/TicksPerMinute*TicksPerMinute);
0 голосов
/ 25 февраля 2011

Я считаю, что это то, что вы ищете.

string.Format("{0:H:mm}",myTime)
...