英語で読む

次の方法で共有


DateTimeOffset.AddDays(Double) メソッド

定義

このインスタンスの値に、指定された整数部と小数部から成る日数を加算した新しい DateTimeOffset オブジェクトを返します。

public DateTimeOffset AddDays(double days);

パラメーター

days
Double

整数部と小数部から成る日数。 正数または負数を指定できます。

戻り値

現在の DateTimeOffset オブジェクトで表された日時に days で表された日数を加算した値を示すオブジェクト。

例外

結果 DateTimeOffset の値が DateTimeOffset.MinValue 未満です

\- または -

結果 DateTimeOffset の値が DateTimeOffset.MaxValue より大きくなります。

次の例では、 メソッドを AddDays 使用して、2008 年 3 月の稼働日の開始日である月曜日の日付を一覧表示します。

DateTimeOffset workDay = new DateTimeOffset(2008, 3, 1, 9, 0, 0,
                   DateTimeOffset.Now.Offset);
int month = workDay.Month;
// Start with the first Monday of the month
if (workDay.DayOfWeek != DayOfWeek.Monday)
{
   if (workDay.DayOfWeek == DayOfWeek.Sunday)
      workDay = workDay.AddDays(1);
   else
      workDay = workDay.AddDays(8 - (int)workDay.DayOfWeek);
}
Console.WriteLine("Beginning of Work Week In {0:MMMM} {0:yyyy}:", workDay);
// Add one week to the current date
do
{
   Console.WriteLine("   {0:dddd}, {0:MMMM}{0: d}", workDay);
   workDay = workDay.AddDays(7);
} while (workDay.Month == month);
// The example produces the following output:
//    Beginning of Work Week In March 2008:
//       Monday, March 3
//       Monday, March 10
//       Monday, March 17
//       Monday, March 24
//       Monday, March 31

注釈

パラメーターの days 小数部は、1 日の小数部です。 たとえば、4.5 は 4 日、12 時間、0 分、0 秒、0 ミリ秒に相当します。

.NET 6 以前のバージョンでは、 days パラメーターは最も近いミリ秒に丸められます。 .NET 7 以降のバージョンでは、 パラメーターのdays完全なDouble有効桁数が使用されます。 ただし、浮動小数点演算の本質的な不正確さが原因で、結果の精度は異なります。

注意

このメソッドは、新 DateTimeOffset しい オブジェクトを返します。 現在のオブジェクトの日付と時刻に を追加 days しても、現在のオブジェクトの値は変更されません。

オブジェクトは DateTimeOffset 特定のタイム ゾーンの日付と時刻を表していないため、 AddDays メソッドは日付と時刻の算術演算を実行するときに特定のタイム ゾーンの調整規則を考慮しません。

1 日未満の時間間隔を分数に変換すると、精度が失われる可能性があります。 これが問題になる場合は、 メソッドを Add 使用できます。これにより、1 回のメソッド呼び出しで複数の種類の時間間隔を指定でき、時間間隔を 1 日の小数部に変換する必要がなくなります。

適用対象

製品 バージョン
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0