DateTime.AddYears(Int32) DateTime.AddYears(Int32) DateTime.AddYears(Int32) DateTime.AddYears(Int32) Method

Définition

Retourne un nouveau DateTime qui ajoute le nombre d'années spécifié à la valeur de cette instance.Returns a new DateTime that adds the specified number of years to the value of this instance.

public:
 DateTime AddYears(int value);
public DateTime AddYears (int value);
member this.AddYears : int -> DateTime
Public Function AddYears (value As Integer) As DateTime

Paramètres

value
Int32 Int32 Int32 Int32

Nombre d'années.A number of years. Le paramètre value peut être négatif ou positif.The value parameter can be negative or positive.

Retours

Objet dont la valeur est égale à la somme de la date et de l'heure représentées par cette instance et du nombre d'années représenté par value.An object whose value is the sum of the date and time represented by this instance and the number of years represented by value.

Exceptions

value ou le DateTime obtenu est inférieur à MinValue ou supérieur à MaxValue.value or the resulting DateTime is less than MinValue or greater than MaxValue.

Remarques

Cette méthode ne modifie pas la valeur de cet DateTime objet.This method does not change the value of this DateTime object. Au lieu de cela, elle DateTime retourne un nouvel objet dont la valeur est le résultat de cette opération.Instead, it returns a new DateTime object whose value is the result of this operation.

La AddYears méthode calcule l’année résultante en tenant compte des années bissextiles.The AddYears method calculates the resulting year taking into account leap years. La partie mois et heure du jour de l’objet résultant DateTime reste identique à celle de cette instance.The month and time-of-day part of the resulting DateTime object remains the same as this instance.

Si l’instance actuelle représente le jour d’une année bissextile, la valeur de retour dépend de la date cible :If the current instance represents the leap day in a leap year, the return value depends on the target date:

  • Si value estégalementuneDateTime.Year année bissextile, la valeur de retour représente le jour d’une année bissextile. + If value + DateTime.Year is also a leap year, the return value represents the leap day in that year. Par exemple, si quatre années sont ajoutées au 29 février 2012, la date renvoyée est le 29 février 2016.For example, if four years is added to February 29, 2012, the date returned is February 29, 2016.

  • Si value n’estpasDateTime.Year une année bissextile, la valeur de retour représente le jour précédant le jour d’une année bissextile de cette année. + If value + DateTime.Year is not a leap year, the return value represents the day before the leap day in that year. Par exemple, si un an est ajouté au 29 février 2012, la date retournée est le 28 février 2013.For example, if one year is added to February 29, 2012, the date returned is February 28, 2013.

L’exemple suivant illustre l’utilisation de AddYears la méthode avec DateTime une valeur qui représente un jour de l’année bissextile.The following example illustrates using the AddYears method with a DateTime value that represents a leap year day. Il affiche la date des quinze ans précédant et les quinze ans qui suivent le 29 février 2000.It displays the date for the fifteen years prior to and the fifteen years that follow February 29, 2000.

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

S’applique à