DateTime.AddYears(Int32) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
このインスタンスの値に、指定された年数を加算した新しい DateTime を返します。
public:
DateTime AddYears(int value);
public DateTime AddYears (int value);
member this.AddYears : int -> DateTime
Public Function AddYears (value As Integer) As DateTime
パラメーター
- value
- Int32
年数。
value
パラメーターは、正または負のどちらの場合もあります。
戻り値
このインスタンスで表された日付と時刻に value
で表された年数を加算した値を保持するオブジェクト。
例外
value
または、結果 DateTime が DateTime.MinValue より小さいか 、DateTime.MaxValue より大きい。
注釈
このメソッドは、この DateTime オブジェクトの値を変更しません。 代わりに、この操作の結果である値を持つ新しい DateTime オブジェクトを返します。
メソッドは AddYears 、うるう年を考慮して、結果の年を計算します。 結果の DateTime オブジェクトの月と時刻の部分は、このインスタンスと同じままです。
現在のインスタンスが閏年の閏日を表す場合、戻り値はターゲットの日付によって異なります。
が閏年の場合
value
+ DateTime.Year 、戻り値はその年の閏日を表します。 たとえば、2012 年 2 月 29 日に 4 年間を追加した場合、返される日付は 2016 年 2 月 29 日です。が閏年でない場合
value
+ DateTime.Year 、戻り値は、その年の閏日の前日を表します。 たとえば、2012 年 2 月 29 日に 1 年間を追加した場合、返される日付は 2013 年 2 月 28 日です。
次の例は、閏年の AddYears 日を表す値で DateTime メソッドを使用する方法を示しています。 15 年前の日付と、2000 年 2 月 29 日に続く 15 年間の日付が表示されます。
using System;
public class Example
{
public static void Main()
{
DateTime baseDate = new DateTime(2000, 2, 29);
Console.WriteLine(" Base Date: {0:d}\n", baseDate);
// Show dates of previous fifteen years.
for (int ctr = -1; ctr >= -15; ctr--)
Console.WriteLine("{0,2} year(s) ago: {1:d}",
Math.Abs(ctr), baseDate.AddYears(ctr));
Console.WriteLine();
// Show dates of next fifteen years.
for (int ctr = 1; ctr <= 15; ctr++)
Console.WriteLine("{0,2} year(s) from now: {1:d}",
ctr, baseDate.AddYears(ctr));
}
}
// The example displays the following output:
// Base Date: 2/29/2000
//
// 1 year(s) ago: 2/28/1999
// 2 year(s) ago: 2/28/1998
// 3 year(s) ago: 2/28/1997
// 4 year(s) ago: 2/29/1996
// 5 year(s) ago: 2/28/1995
// 6 year(s) ago: 2/28/1994
// 7 year(s) ago: 2/28/1993
// 8 year(s) ago: 2/29/1992
// 9 year(s) ago: 2/28/1991
// 10 year(s) ago: 2/28/1990
// 11 year(s) ago: 2/28/1989
// 12 year(s) ago: 2/29/1988
// 13 year(s) ago: 2/28/1987
// 14 year(s) ago: 2/28/1986
// 15 year(s) ago: 2/28/1985
//
// 1 year(s) from now: 2/28/2001
// 2 year(s) from now: 2/28/2002
// 3 year(s) from now: 2/28/2003
// 4 year(s) from now: 2/29/2004
// 5 year(s) from now: 2/28/2005
// 6 year(s) from now: 2/28/2006
// 7 year(s) from now: 2/28/2007
// 8 year(s) from now: 2/29/2008
// 9 year(s) from now: 2/28/2009
// 10 year(s) from now: 2/28/2010
// 11 year(s) from now: 2/28/2011
// 12 year(s) from now: 2/29/2012
// 13 year(s) from now: 2/28/2013
// 14 year(s) from now: 2/28/2014
// 15 year(s) from now: 2/28/2015
open System
let baseDate = DateTime(2000, 2, 29)
printfn $" Base Date: {baseDate:d}\n"
// Show dates of previous fifteen years.
for i = -1 downto -15 do
printfn $"{-i,2} year(s) ago: {baseDate.AddYears i:d}"
printfn ""
// Show dates of next fifteen years.
for i = 1 to 15 do
printfn $"{i,2} year(s) from now: {baseDate.AddYears i:d}"
// The example displays the following output:
// Base Date: 2/29/2000
//
// 1 year(s) ago: 2/28/1999
// 2 year(s) ago: 2/28/1998
// 3 year(s) ago: 2/28/1997
// 4 year(s) ago: 2/29/1996
// 5 year(s) ago: 2/28/1995
// 6 year(s) ago: 2/28/1994
// 7 year(s) ago: 2/28/1993
// 8 year(s) ago: 2/29/1992
// 9 year(s) ago: 2/28/1991
// 10 year(s) ago: 2/28/1990
// 11 year(s) ago: 2/28/1989
// 12 year(s) ago: 2/29/1988
// 13 year(s) ago: 2/28/1987
// 14 year(s) ago: 2/28/1986
// 15 year(s) ago: 2/28/1985
//
// 1 year(s) from now: 2/28/2001
// 2 year(s) from now: 2/28/2002
// 3 year(s) from now: 2/28/2003
// 4 year(s) from now: 2/29/2004
// 5 year(s) from now: 2/28/2005
// 6 year(s) from now: 2/28/2006
// 7 year(s) from now: 2/28/2007
// 8 year(s) from now: 2/29/2008
// 9 year(s) from now: 2/28/2009
// 10 year(s) from now: 2/28/2010
// 11 year(s) from now: 2/28/2011
// 12 year(s) from now: 2/29/2012
// 13 year(s) from now: 2/28/2013
// 14 year(s) from now: 2/28/2014
// 15 year(s) from now: 2/28/2015
Module Example
Public Sub Main()
Dim baseDate As Date = #2/29/2000#
Console.WriteLine(" Base Date: {0:d}", baseDate)
Console.WriteLine()
' Show dates of previous fifteen years.
For ctr As Integer = -1 To -15 Step -1
Console.WriteLine("{0,3} years ago: {1:d}",
ctr, baseDate.AddYears(ctr))
Next
Console.WriteLine()
' Show dates of next fifteen years.
For ctr As Integer = 1 To 15
Console.WriteLine("{0,3} years from now: {1:d}",
ctr, baseDate.AddYears(ctr))
Next
End Sub
End Module
' The example displays the following output:
' Base Date: 2/29/2000
'
' 1 year(s) ago: 2/28/1999
' 2 year(s) ago: 2/28/1998
' 3 year(s) ago: 2/28/1997
' 4 year(s) ago: 2/29/1996
' 5 year(s) ago: 2/28/1995
' 6 year(s) ago: 2/28/1994
' 7 year(s) ago: 2/28/1993
' 8 year(s) ago: 2/29/1992
' 9 year(s) ago: 2/28/1991
' 10 year(s) ago: 2/28/1990
' 11 year(s) ago: 2/28/1989
' 12 year(s) ago: 2/29/1988
' 13 year(s) ago: 2/28/1987
' 14 year(s) ago: 2/28/1986
' 15 year(s) ago: 2/28/1985
'
' 1 year(s) from now: 2/28/2001
' 2 year(s) from now: 2/28/2002
' 3 year(s) from now: 2/28/2003
' 4 year(s) from now: 2/29/2004
' 5 year(s) from now: 2/28/2005
' 6 year(s) from now: 2/28/2006
' 7 year(s) from now: 2/28/2007
' 8 year(s) from now: 2/29/2008
' 9 year(s) from now: 2/28/2009
' 10 year(s) from now: 2/28/2010
' 11 year(s) from now: 2/28/2011
' 12 year(s) from now: 2/29/2012
' 13 year(s) from now: 2/28/2013
' 14 year(s) from now: 2/28/2014
' 15 year(s) from now: 2/28/2015
適用対象
.NET