Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C#에서 TimeSpan의 절대값(지속 시간) 구하기 – Duration() 메서드 활용법

C#에서 음수 값으로 표현된 TimeSpan의 절대값을 구하려면 Duration() 메서드를 사용하면 됩니다. 이 메서드는 TimeSpan 객체의 부호를 제거하고, 순수한 지속 시간(duration)만을 반환합니다.

TimeSpan 객체 생성

먼저 다음과 같이 음수 값을 가진 TimeSpan 객체를 생성해 보겠습니다.

TimeSpan ts = new TimeSpan(-7, -50, -25);

Duration() 메서드로 절대값 구하기

생성된 TimeSpan의 절대값은 Duration() 메서드를 호출하여 간단히 얻을 수 있습니다.

TimeSpan duration = ts.Duration();

전체 예제 코드

아래는 위 내용을 모두 포함한 완성된 예제 코드입니다.

using System;
using System.Linq;
public class Demo {
   public static void Main() {
      TimeSpan ts = new TimeSpan(-7, -50, -25);
      TimeSpan duration = ts.Duration();
      Console.WriteLine(duration);
   }
}

실행 결과

07:50:25

코드 설명

위 예제에서 new TimeSpan(-7, -50, -25)는 시, 분, 초가 모두 음수인 TimeSpan 객체를 생성합니다. 일반적으로 TimeSpan 생성자에 음수 값을 전달하면 전체 기간이 음수로 해석됩니다.

이때 Duration() 메서드를 호출하면 부호와 관계없이 해당 시간 간격의 크기만 반환되므로, 결과적으로 07:50:25라는 양수 값의 지속 시간을 얻게 됩니다.

참고로 Math.Abs() 메서드는 TimeSpan 타입에 직접 사용할 수 없으므로, TimeSpan의 절대값이 필요할 때는 반드시 Duration() 메서드를 활용하는 것이 올바른 방법입니다.