다음을 통해 공유


DateTimeOffset.Subtract 메서드

정의

현재 DateTimeOffset 개체에서 지정된 시간이나 기간을 뺍니다.

오버로드

Subtract(DateTimeOffset)

특정 날짜와 시간을 나타내는 DateTimeOffset 값을 현재 DateTimeOffset 개체에서 뺍니다.

Subtract(TimeSpan)

현재 DateTimeOffset 개체에서 지정된 시간 간격을 뺍니다.

Subtract(DateTimeOffset)

Source:
DateTimeOffset.cs
Source:
DateTimeOffset.cs
Source:
DateTimeOffset.cs

특정 날짜와 시간을 나타내는 DateTimeOffset 값을 현재 DateTimeOffset 개체에서 뺍니다.

public:
 TimeSpan Subtract(DateTimeOffset value);
public TimeSpan Subtract (DateTimeOffset value);
member this.Subtract : DateTimeOffset -> TimeSpan
Public Function Subtract (value As DateTimeOffset) As TimeSpan

매개 변수

value
DateTimeOffset

뺄 값을 나타내는 개체입니다.

반환

DateTimeOffset 개체 사이의 간격을 지정하는 개체입니다.

예제

다음 예제에서는 메서드를 사용하는 Subtract(DateTimeOffset) 빼기를 보여 줍니다.

DateTimeOffset firstDate = new DateTimeOffset(2018, 10, 25, 18, 0, 0,
                                              new TimeSpan(-7, 0, 0));
DateTimeOffset secondDate = new DateTimeOffset(2018, 10, 25, 18, 0, 0,
                                               new TimeSpan(-5, 0, 0));
DateTimeOffset thirdDate = new DateTimeOffset(2018, 9, 28, 9, 0, 0,
                                              new TimeSpan(-7, 0, 0));
TimeSpan difference;

difference = firstDate.Subtract(secondDate);
Console.WriteLine($"({firstDate}) - ({secondDate}): {difference.Days} days, {difference.Hours}:{difference.Minutes:d2}");

difference = firstDate.Subtract(thirdDate);
Console.WriteLine($"({firstDate}) - ({thirdDate}): {difference.Days} days, {difference.Hours}:{difference.Minutes:d2}");

// The example produces the following output:
//    (10/25/2018 6:00:00 PM -07:00) - (10/25/2018 6:00:00 PM -05:00): 0 days, 2:00
//    (10/25/2018 6:00:00 PM -07:00) - (9/28/2018 9:00:00 AM -07:00): 27 days, 9:00
let firstDate = DateTimeOffset(2018, 10, 25, 18, 0, 0, TimeSpan(-7, 0, 0))
let secondDate = DateTimeOffset(2018, 10, 25, 18, 0, 0, TimeSpan(-5, 0, 0))
let thirdDate = DateTimeOffset(2018, 9, 28, 9, 0, 0, TimeSpan(-7, 0, 0))

let difference = firstDate.Subtract secondDate
printfn $"({firstDate}) - ({secondDate}): {difference.Days} days, {difference.Hours}:{difference.Minutes:d2}"

let difference = firstDate.Subtract thirdDate
printfn $"({firstDate}) - ({thirdDate}): {difference.Days} days, {difference.Hours}:{difference.Minutes:d2}"

// The example produces the following output:
//    (10/25/2018 6:00:00 PM -07:00) - (10/25/2018 6:00:00 PM -05:00): 0 days, 2:00
//    (10/25/2018 6:00:00 PM -07:00) - (9/28/2018 9:00:00 AM -07:00): 27 days, 9:00
Dim firstDate As New DateTimeOffset(#10/25/2018 6:00PM#, _
                                    New TimeSpan(-7, 0, 0))
Dim secondDate As New DateTimeOffset(#10/25/2018 6:00PM#, _
                                     New TimeSpan(-5, 0, 0))
Dim thirdDate As New DateTimeOffset(#9/28/2018 9:00AM#, _
                                    New TimeSpan(-7, 0, 0))
Dim difference As TimeSpan

difference = firstDate.Subtract(secondDate)
Console.WriteLine($"({firstDate}) - ({secondDate}): {difference.Days} days, {difference.Hours}:{difference.Minutes:d2}")

difference = firstDate.Subtract(thirdDate)
Console.WriteLine($"({firstDate}) - ({thirdDate}): {difference.Days} days, {difference.Hours}:{difference.Minutes:d2}")

' The example produces the following output:
'    (10/25/2018 6:00:00 PM -07:00) - (10/25/2018 6:00:00 PM -05:00): 0 days, 2:00
'    (10/25/2018 6:00:00 PM -07:00) - (9/28/2018 9:00:00 AM -07:00): 27 days, 9:00

설명

이 메서드는 두 개체를 구분하는 시간 간격을 계산하기 전에 두 DateTimeOffset 개체를 UTC(협정 세계시)로 변환합니다. 이렇게 하면 UTC의 다른 오프셋이 비교에 미칠 수 있는 모든 효과가 제거됩니다.

참고

사용자 지정 연산자를 지원하는 언어의 경우 빼기 연산자를 사용하여 날짜 및 시간 빼기를 수행할 수도 있습니다. 자세한 내용은 메서드를 Subtraction 참조하세요.

현재 DateTimeOffset 개체와 value 매개 변수가 특정 표준 시간대 Subtract(DateTimeOffset) 의 날짜 및 시간을 나타내지 않으므로 메서드는 날짜 및 시간을 빼는 경우 특정 표준 시간대의 조정 규칙을 고려하지 않습니다.

추가 정보

적용 대상

Subtract(TimeSpan)

Source:
DateTimeOffset.cs
Source:
DateTimeOffset.cs
Source:
DateTimeOffset.cs

현재 DateTimeOffset 개체에서 지정된 시간 간격을 뺍니다.

public:
 DateTimeOffset Subtract(TimeSpan value);
public DateTimeOffset Subtract (TimeSpan value);
member this.Subtract : TimeSpan -> DateTimeOffset
Public Function Subtract (value As TimeSpan) As DateTimeOffset

매개 변수

value
TimeSpan

뺄 시간 간격입니다.

반환

현재 DateTimeOffset 개체에서 value로 표현된 시간 간격을 빼서 나타낸 날짜 및 시간과 같은 개체입니다.

예외

예제

다음 예제에서는 메서드를 사용하는 Subtract 빼기를 보여 줍니다.

DateTimeOffset offsetDate = new DateTimeOffset(2007, 12, 3, 11, 30, 0,
                               new TimeSpan(-8, 0, 0));
TimeSpan duration = new TimeSpan(7, 18, 0, 0);
Console.WriteLine(offsetDate.Subtract(duration).ToString());  // Displays 11/25/2007 5:30:00 PM -08:00
let offsetDate = DateTimeOffset(2007, 12, 3, 11, 30, 0, TimeSpan(-8, 0, 0))
let duration = TimeSpan(7, 18, 0, 0)
printfn $"{offsetDate.Subtract duration}"  // Displays 11/25/2007 5:30:00 PM -08:00
Dim offsetDate As New DateTimeOffset(#12/3/2007 11:30AM#, _
                               New TimeSpan(-8, 0, 0)) 
Dim duration As New TimeSpan(7, 18, 0, 0)
Console.WriteLine(offsetDate.Subtract(duration))    ' Displays 11/25/2007 5:30:00 PM -08:00

설명

메서드를 Subtract 사용하여 단일 작업에서 두 종류 이상의 시간 간격(일, 시간, 분, 초 또는 밀리초)을 뺍니다. 해당 동작은 빼기 연산자를 정의하는 메서드와 동일합니다 Subtraction(DateTimeOffset, TimeSpan) . 구조체는 DateTimeOffset 메서드 매개 변수에 음수 값을 할당하여 빼기를 수행할 수 있는 특수 추가 메서드(예: AddDays, AddHoursAddMinutes)도 지원합니다.

참고

이 메서드는 새 DateTimeOffset 개체를 반환합니다. 날짜와 시간을 빼 value 서 현재 개체의 값을 수정하지 않습니다.

메서드는 Subtract 개체 Offset 의 속성 값에 DateTimeOffset 영향을 주지 않습니다. 반환된 DateTimeOffset 개체의 오프셋은 원래 개체와 동일합니다.

현재 DateTimeOffset 개체는 특정 표준 시간대의 날짜와 시간을 나타내지 않으므로 메서드는 Subtract(TimeSpan) 빼기를 수행할 때 특정 표준 시간대의 조정 규칙을 고려하지 않습니다.

추가 정보

적용 대상