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

C# DateTimeOffset.AddDays() 메서드 완벽 정리 – 날짜 더하기와 빼기

C#의 DateTimeOffset.AddDays() 메서드는 현재 인스턴스의 값에 지정된 일수(정수 또는 소수점 단위)를 더한 새로운 DateTimeOffset 객체를 반환하는 메서드입니다. 기존 객체는 변경되지 않고 항상 새로운 객체가 반환된다는 점이 특징입니다.

문법(Syntax)

DateTimeOffset.AddDays() 메서드의 기본 문법은 다음과 같습니다.

public DateTimeOffset AddDays(double val);

매개변수 val은 더할 일수를 나타냅니다. 날짜를 빼고 싶다면 음수 값을 전달하면 됩니다.

예제 1 – 날짜에 일수 더하기

아래 예제는 DateTimeOffset.AddDays() 메서드를 사용하여 특정 날짜에 20일을 더하는 방법을 보여줍니다.

using System;
public class Demo {
   public static void Main() {
      DateTimeOffset dateTimeOffset = new DateTimeOffset(2019, 10, 10, 9, 15, 0, new TimeSpan(-5, 0, 0));
      DateTimeOffset res = dateTimeOffset.AddDays(20);
      Console.WriteLine("DateTimeOffset = {0}", res);
   }
}

실행 결과

위 코드를 실행하면 다음과 같은 출력 결과를 확인할 수 있습니다.

DateTimeOffset = 10/30/2019 9:15:00 AM -05:00

예제 2 – 날짜에서 일수 빼기

AddDays() 메서드에 음수 값을 전달하면 날짜를 뺄 수도 있습니다. 아래 예제에서는 5일을 빼보겠습니다.

using System;
public class Demo {
   public static void Main() {
      DateTimeOffset dateTimeOffset = new DateTimeOffset(2019, 10, 10, 9, 15, 0, new TimeSpan(-5, 0, 0));
      DateTimeOffset res = dateTimeOffset.AddDays(-5);
      Console.WriteLine("DateTimeOffset (after subtracting days) = {0}", res);
   }
}

실행 결과

위 코드를 실행하면 다음과 같은 출력 결과를 얻을 수 있습니다.

DateTimeOffset (after subtracting days) = 10/5/2019 9:15:00 AM -05:00

정리

DateTimeOffset.AddDays() 메서드는 시간대(offset) 정보를 그대로 유지하면서 날짜 계산을 수행할 수 있어, 여러 시간대를 다루는 애플리케이션에서 DateTime보다 안전하게 사용할 수 있습니다. 소수점 값도 허용되므로 AddDays(1.5)처럼 반나절 단위의 정밀한 계산도 가능합니다.