JapaneseCalendar.AddMonths(DateTime, Int32) Methode

Definitie

Geeft als resultaat een DateTime getal dat het opgegeven aantal maanden weg is van het opgegeven DateTimeaantal maanden.

public:
 override DateTime AddMonths(DateTime time, int months);
public override DateTime AddMonths(DateTime time, int months);
override this.AddMonths : DateTime * int -> DateTime
Public Overrides Function AddMonths (time As DateTime, months As Integer) As DateTime

Parameters

time
DateTime

De DateTime waaraan maanden moeten worden toegevoegd.

months
Int32

Het aantal maanden dat moet worden toegevoegd.

Retouren

Dit DateTime resulteert in het toevoegen van het opgegeven aantal maanden aan de opgegeven DateTime.

Uitzonderingen

Het resultaat DateTime valt buiten het ondersteunde bereik.

months is kleiner dan -120000.

– of –

months is groter dan 120000.

Voorbeelden

In het volgende codevoorbeeld worden de waarden van verschillende onderdelen van een kalender DateTime weergegeven in termen van de Japanse kalender.

using System;
using System.Globalization;

public class SamplesJapaneseCalendar  {

   public static void Main()  {

      // Sets a DateTime to April 3, 2002 of the Gregorian calendar.
      DateTime myDT = new DateTime( 2002, 4, 3, new GregorianCalendar() );

      // Creates an instance of the JapaneseCalendar.
      JapaneseCalendar myCal = new JapaneseCalendar();

      // Displays the values of the DateTime.
      Console.WriteLine( "April 3, 2002 of the Gregorian calendar equals the following in the Japanese calendar:" );
      DisplayValues( myCal, myDT );

      // Adds two years and ten months.
      myDT = myCal.AddYears( myDT, 2 );
      myDT = myCal.AddMonths( myDT, 10 );

      // Displays the values of the DateTime.
      Console.WriteLine( "After adding two years and ten months:" );
      DisplayValues( myCal, myDT );
   }

   public static void DisplayValues( Calendar myCal, DateTime myDT )  {
      Console.WriteLine( "   Era:        {0}", myCal.GetEra( myDT ) );
      Console.WriteLine( "   Year:       {0}", myCal.GetYear( myDT ) );
      Console.WriteLine( "   Month:      {0}", myCal.GetMonth( myDT ) );
      Console.WriteLine( "   DayOfYear:  {0}", myCal.GetDayOfYear( myDT ) );
      Console.WriteLine( "   DayOfMonth: {0}", myCal.GetDayOfMonth( myDT ) );
      Console.WriteLine( "   DayOfWeek:  {0}", myCal.GetDayOfWeek( myDT ) );
      Console.WriteLine();
   }
}

/*
This code produces the following output.

April 3, 2002 of the Gregorian calendar equals the following in the Japanese calendar:
   Era:        4
   Year:       14
   Month:      4
   DayOfYear:  93
   DayOfMonth: 3
   DayOfWeek:  Wednesday

After adding two years and ten months:
   Era:        4
   Year:       17
   Month:      2
   DayOfYear:  34
   DayOfMonth: 3
   DayOfWeek:  Thursday

*/
Imports System.Globalization


Public Class SamplesJapaneseCalendar   

   Public Shared Sub Main()

      ' Sets a DateTime to April 3, 2002 of the Gregorian calendar.
      Dim myDT As New DateTime(2002, 4, 3, New GregorianCalendar())

      ' Creates an instance of the JapaneseCalendar.
      Dim myCal As New JapaneseCalendar()

      ' Displays the values of the DateTime.
      Console.WriteLine("April 3, 2002 of the Gregorian calendar equals the following in the Japanese calendar:")
      DisplayValues(myCal, myDT)

      ' Adds two years and ten months.
      myDT = myCal.AddYears(myDT, 2)
      myDT = myCal.AddMonths(myDT, 10)

      ' Displays the values of the DateTime.
      Console.WriteLine("After adding two years and ten months:")
      DisplayValues(myCal, myDT)

   End Sub

   Public Shared Sub DisplayValues(myCal As Calendar, myDT As DateTime)
      Console.WriteLine("   Era:        {0}", myCal.GetEra(myDT))
      Console.WriteLine("   Year:       {0}", myCal.GetYear(myDT))
      Console.WriteLine("   Month:      {0}", myCal.GetMonth(myDT))
      Console.WriteLine("   DayOfYear:  {0}", myCal.GetDayOfYear(myDT))
      Console.WriteLine("   DayOfMonth: {0}", myCal.GetDayOfMonth(myDT))
      Console.WriteLine("   DayOfWeek:  {0}", myCal.GetDayOfWeek(myDT))
      Console.WriteLine()
   End Sub

End Class


'This code produces the following output.
'
'April 3, 2002 of the Gregorian calendar equals the following in the Japanese calendar:
'   Era:        4
'   Year:       14
'   Month:      4
'   DayOfYear:  93
'   DayOfMonth: 3
'   DayOfWeek:  Wednesday
'
'After adding two years and ten months:
'   Era:        4
'   Year:       17
'   Month:      2
'   DayOfYear:  34
'   DayOfMonth: 3
'   DayOfWeek:  Thursday

Opmerkingen

Het daggedeelte van het resultaat DateTime wordt beïnvloed als de resulterende dag geen geldige dag is in de resulterende maand van het resulterende jaar. Deze wordt gewijzigd in de laatste geldige dag in de resulterende maand van het resulterende jaar. Het jaargedeelte van het resultaat DateTime wordt beïnvloed als de resulterende maand buiten het opgegeven DateTimejaar valt. Het tijdperkgedeelte van het resulterende DateTime wordt beïnvloed als het resulterende jaar buiten het opgegeven DateTimetijdperk valt. Het tijdstip van de dag van het resulterende DateTime gedeelte blijft hetzelfde als de opgegeven DateTime.

Als de opgegeven maand bijvoorbeeld Juugatsu (oktober), die 31 dagen heeft, de opgegeven dag de 31e dag van die maand is en months 6 is, is het resulterende jaar één meer dan het opgegeven jaar, de resulterende maand is Shigatsu (april) en de resulterende dag de 30e dag, de laatste dag in Shigatsu (april).

Als months dit negatief is, is het resultaat DateTime eerder dan de opgegeven DateTime.

De Kind eigenschap van de geretourneerde DateTime waarde is DateTimeKind.Unspecifiedaltijd gelijk aan. U kunt de Kind eigenschap van de time parameter behouden door de DateTime.SpecifyKind methode aan te roepen, zoals in het volgende voorbeeld wordt weergegeven.

returnTime = DateTime.SpecifyKind(cal.AddMonths(time, months), time.Kind);
returnTime = DateTime.SpecifyKind(cal.AddMonths(time, months), time.Kind)

Van toepassing op

Zie ook