C#에서 두 개의 시간 범위(TimeSpan)를 빼야 할 때는 Subtract() 메서드를 사용하면 됩니다. 이 메서드는 현재 TimeSpan 인스턴스에서 다른 TimeSpan을 뺀 결과를 새로운 TimeSpan 객체로 반환합니다.
1. 두 개의 TimeSpan 설정하기
먼저 빼기를 수행할 두 개의 TimeSpan 변수를 준비합니다. 아래 예제에서는 FromMinutes() 메서드를 사용해 각각 2분과 1분에 해당하는 TimeSpan을 생성했습니다.
TimeSpan t1 = TimeSpan.FromMinutes(2); TimeSpan t2 = TimeSpan.FromMinutes(1);
2. Subtract() 메서드로 빼기 수행하기
두 TimeSpan의 차이를 구하려면 Subtract() 메서드를 호출합니다.
TimeSpan res = t1.Subtract(t2);
전체 코드
using System;
using System.Linq;
public class Demo {
public static void Main() {
TimeSpan t1 = TimeSpan.FromMinutes(2);
TimeSpan t2 = TimeSpan.FromMinutes(1);
Console.WriteLine("First TimeSpan: " + t1);
Console.WriteLine("Second TimeSpan: " + t2);
// 빼기 연산 수행
TimeSpan res = t1.Subtract(t2);
Console.WriteLine("Resultant TimeSpan: " + res);
}
}
실행 결과
First TimeSpan: 00:02:00 Second TimeSpan: 00:01:00 Resultant TimeSpan: 00:01:00
참고 사항
Subtract() 메서드 대신 뺄셈 연산자(-)를 사용하는 것도 가능합니다. 즉, t1.Subtract(t2)와 t1 - t2는 동일한 결과를 반환합니다. 또한 연산 결과가 음수가 되더라도 TimeSpan이 정상적으로 처리되므로, 작업 소요 시간 계산이나 시간 간격 비교 등 다양한 상황에서 유용하게 활용할 수 있습니다.