DateTimeOffset.Subtract DateTimeOffset.Subtract DateTimeOffset.Subtract DateTimeOffset.Subtract Method

定義

指定した時間または現在の期間を減算DateTimeOffsetオブジェクト。Subtracts a specified time or duration from the current DateTimeOffset object.

オーバーロード

Subtract(DateTimeOffset) Subtract(DateTimeOffset) Subtract(DateTimeOffset) Subtract(DateTimeOffset)

現在の DateTimeOffset オブジェクトから、特定の日時を表す DateTimeOffset 値を減算します。Subtracts a DateTimeOffset value that represents a specific date and time from the current DateTimeOffset object.

Subtract(TimeSpan) Subtract(TimeSpan) Subtract(TimeSpan) Subtract(TimeSpan)

現在の DateTimeOffset オブジェクトから、指定された時間間隔を減算します。Subtracts a specified time interval from the current DateTimeOffset object.

Subtract(DateTimeOffset) Subtract(DateTimeOffset) Subtract(DateTimeOffset) Subtract(DateTimeOffset)

現在の DateTimeOffset オブジェクトから、特定の日時を表す DateTimeOffset 値を減算します。Subtracts a DateTimeOffset value that represents a specific date and time from the current DateTimeOffset object.

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 DateTimeOffset DateTimeOffset

減算する値を表すオブジェクト。An object that represents the value to subtract.

戻り値

2 つの DateTimeOffset オブジェクト間の間隔を指定するオブジェクト。An object that specifies the interval between the two DateTimeOffset objects.

次の例では、減算を使用する、Subtract(DateTimeOffset)メソッド。The following example illustrates subtraction that uses the Subtract(DateTimeOffset) method.

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
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)。This method converts both DateTimeOffset objects to Coordinated Universal Time (UTC) before calculating the time interval that separates them. これには、UTC からのオフセットが異なる可能性がある、比較に影響が削除されます。This removes any effect that different offsets from UTC may have on the comparison.

注意

カスタム演算子をサポートする言語では、減算演算子を使用して日付と時刻の減算を実行することもできます。For languages that support custom operators, you can also perform date and time subtraction by using the subtraction operator. 詳細については、次を参照してください。、Subtractionメソッド。For details, see the Subtraction method.

ため、どちらも現在DateTimeOffsetオブジェクトもvalueパラメーターは、特定のタイム ゾーンの日時を表す、Subtract(DateTimeOffset)メソッドでは、特定のタイム ゾーンの調整規則を日付と時刻を減算するときに考慮されません。Because neither the current DateTimeOffset object nor the value parameter represent the date and time in a specific time zone, the Subtract(DateTimeOffset) method does not consider a particular time zone's adjustment rules when it subtracts dates and times.

こちらもご覧ください

Subtract(TimeSpan) Subtract(TimeSpan) Subtract(TimeSpan) Subtract(TimeSpan)

現在の DateTimeOffset オブジェクトから、指定された時間間隔を減算します。Subtracts a specified time interval from the current DateTimeOffset object.

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 TimeSpan TimeSpan TimeSpan

減算する時間間隔。The time interval to subtract.

戻り値

現在の DateTimeOffset オブジェクトが表す日時から、value が表す時間間隔を減算した値と等価なオブジェクト。An object that is equal to the date and time represented by the current DateTimeOffset object, minus the time interval represented by value.

例外

結果として得られる DateTimeOffset 値は MinValue より小さい値です。The resulting DateTimeOffset value is less than MinValue.

- または --or- 結果として得られる DateTimeOffset 値が MaxValue を超えています。The resulting DateTimeOffset value is greater than MaxValue.

次の例では、減算を使用する、Subtractメソッド。The following example illustrates subtraction that uses the Subtract method.

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
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時間間隔 (日、時、分、秒またはミリ秒単位) を 1 回の操作での複数の種類を減算するメソッド。You can use the Subtract method to subtract more than one kind of time interval (days, hours, minutes, seconds, or milliseconds) in a single operation. その動作と同じです、Subtraction(DateTimeOffset, TimeSpan)メソッドは、減算演算子を定義します。Its behavior is identical to the Subtraction(DateTimeOffset, TimeSpan) method, which defines the subtraction operator. DateTimeOffset構造体には、追加の特殊なメソッドもサポートしています (などAddDaysAddHours、およびAddMinutes) メソッドのパラメーターを負の値を割り当てることで減算を実行することができます。The DateTimeOffset structure also supports specialized addition methods (such as AddDays, AddHours, and AddMinutes) that allow you to perform subtraction by assigning a negative value to the method parameter.

注意

このメソッドは、新しい返しますDateTimeOffsetオブジェクト。This method returns a new DateTimeOffset object. 追加して、現在のオブジェクトの値は変更されませんtimeSpanをその日付と時刻。It does not modify the value of the current object by adding timeSpan to its date and time.

Subtractメソッドではの値には影響しません、DateTimeOffsetオブジェクトのOffsetプロパティ。The Subtract method does not affect the value of the DateTimeOffset object's Offset property. 返されたDateTimeOffsetオブジェクトが元のオブジェクトと同じオフセット。The returned DateTimeOffset object has the same offset as the original object.

ため、現在DateTimeOffsetオブジェクトでは、特定のタイム ゾーンの日時を表していません、Subtract(TimeSpan)メソッドでは、特定のタイム ゾーン調整規則の減算を実行するときは考慮されません。Because the current DateTimeOffset object does not represent the date and time in a specific time zone, the Subtract(TimeSpan) method does not consider a particular time zone's adjustment rules when it performs the subtraction.

こちらもご覧ください

適用対象