OK, tôi giả sử bạn đang sử dụng C# vì có vẻ như vậy.
Nhà điều hành -
trên lớp TimeSpan
đã bị quá tải, vì vậy tất cả những gì bạn cần làm là tiền tố tính toán với -
như bạn thực hiện nếu bạn đang thực hiện chuyển đổi trên số nguyên. Dưới đây là một số mã mà bạn có thể chạy trong một ứng dụng Console:
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());
Bản sao có thể có của [Xử lý khoảng thời gian phủ định] (https://stackoverflow.com/questions/1018643/handle-negative-time-spans) – Michael