我想将timepan diff值转换为正值
我的代码在这里:
TimeSpan lateaftertime = new TimeSpan();
lateaftertime = lateafter - Convert.ToDateTime(intime);
Run Code Online (Sandbox Code Playgroud)
我希望得到的结果总是积极的..请帮帮我..
rec*_*ive 64
您可以使用lateaftertime.Duration()
获得非负跨度.
您可以使用 Math.Abs():
lateaftertime = new TimeSpan(Math.Abs(lateaftertime.Ticks));
Run Code Online (Sandbox Code Playgroud)
不过,用户 V4Vendetta 在评论中做出了正确的决定。使用 TimeSpan.Duration 属性,它始终返回绝对值。
好的,我假设您使用的是 C#,因为它看起来就是这样。
-
类上的运算符已TimeSpan
重载,因此您需要做的就是在计算前添加前缀,-
就像对整数执行转换一样。以下是一些可以在控制台应用程序中运行的代码:
var inTime = "19-Jan-2012 21:00";
var lateAfter = Convert.ToDateTime("19-Jan-2012 20:00");
TimeSpan lateAfterTime = lateAfter - Convert.ToDateTime(inTime);
var positiveLateAfterTime =
lateAfterTime < TimeSpan.Zero
?
-lateAfterTime
:
lateAfterTime;
Console.WriteLine(positiveLateAfterTime.ToString());
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
10679 次 |
最近记录: |