TimeSpan删除秒

时间:2011-02-24 22:44:13

标签: c# javascript .net datetime timespan

如何从C#中的时间跨度对象中截断秒位?即15:37

我正在以HH:mm的格式向JavaScript输出一个时间跨度对象,并希望服务器端处理提供正确的格式而不是客户端浏览器,可以在不将其作为C#字符串对象提供的情况下完成的JavaScript?

5 个答案:

答案 0 :(得分:19)

您可以使用格式字符串:

public string GetTimeSpanAsString(TimeSpan input)
{
    return input.ToString(@"hh\:mm");
}

答案 1 :(得分:8)

您可以截断作为TimeSpan核心的'ticks'值:

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

答案 2 :(得分:1)

可能不是最佳的,但易于阅读:

TimeSpan.FromMinutes((long)duration.TotalMinutes);

答案 3 :(得分:0)

我相信这就是你要找的东西。

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

答案 4 :(得分:0)

也许是这样的。使用截断整数除法将其截断为分钟,然后乘以除数。

return TimeSpan.FromTicks(input.Ticks/TicksPerMinute*TicksPerMinute);