TimeSpan删除秒

May*_*aya 2 .net javascript c# datetime timespan

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

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

Fre*_*örk 19

您可以使用格式字符串:

public string GetTimeSpanAsString(TimeSpan input)
{
    return input.ToString(@"hh\:mm");
}
Run Code Online (Sandbox Code Playgroud)


Wil*_*ean 8

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

TimeSpan t1 = TimeSpan.FromHours(1.551);
Console.WriteLine(t1);
TimeSpan t2 = new TimeSpan(t1.Ticks - (t1.Ticks % 600000000));
Console.WriteLine(t2);
Run Code Online (Sandbox Code Playgroud)

得到:

01:33:03.6000000
01:33:00
Run Code Online (Sandbox Code Playgroud)

  • 很好的答案,但我会使用TimeSpan.TicksPerMinute而不是600000000. (2认同)