Freigeben über


Calendar.AddMonths-Methode

Gibt beim Überschreiben in einer abgeleiteten Klasse eine DateTime zurück, die dem angegebenen Zeitintervall zur angegebenen DateTime in Monaten entspricht.

Namespace: System.Globalization
Assembly: mscorlib (in mscorlib.dll)

Syntax

'Declaration
Public MustOverride Function AddMonths ( _
    time As DateTime, _
    months As Integer _
) As DateTime
'Usage
Dim instance As Calendar
Dim time As DateTime
Dim months As Integer
Dim returnValue As DateTime

returnValue = instance.AddMonths(time, months)
public abstract DateTime AddMonths (
    DateTime time,
    int months
)
public:
virtual DateTime AddMonths (
    DateTime time, 
    int months
) abstract
public abstract DateTime AddMonths (
    DateTime time, 
    int months
)
public abstract function AddMonths (
    time : DateTime, 
    months : int
) : DateTime

Parameter

  • time
    Die DateTime, der Monate hinzugefügt werden sollen.
  • months
    Die Anzahl der hinzuzufügenden Monate.

Rückgabewert

Die DateTime, die sich ergibt, wenn der angegebenen DateTime die angegebene Anzahl von Monaten hinzugefügt wird.

Ausnahmen

Ausnahmetyp Bedingung

ArgumentException

Die resultierende DateTime liegt außerhalb des unterstützten Bereichs dieses Kalenders.

ArgumentOutOfRangeException

months selbst liegt außerhalb des unterstützten Bereichs des DateTime-Rückgabewerts.

Hinweise

Der angegebenen DateTime wird der months-Wert hinzugefügt. Wenn months negativ ist, liegt die resultierende DateTime zeitlich vor der angegebenen DateTime.

Wenn der resultierende Tag kein gültiger Tag im resultierenden Monat des resultierenden Jahres ist, ist auch der Tag der resultierenden DateTime betroffen. Er wird in den letzten gültigen Tag im resultierenden Monat des resultierenden Jahres geändert. Das Jahr der resultierenden DateTime ist betroffen, wenn der resultierende Monat außerhalb des Jahres der angegebenen DateTime liegt. Der Zeitraum der resultierenden DateTime ist betroffen, wenn das resultierende Jahr außerhalb des Zeitraums der angegebenen DateTime liegt. Die Tageszeit der resultierenden DateTime entspricht der der angegebenen DateTime.

Angenommen, der aktuelle Kalender weist 12 Monate auf, wobei der vierte Monat 30 Tage und der zehnte Monat 31 Tage hat. Wenn der angegebene Monat der zehnte Monat, der angegebene Tag der 31. Tag dieses Monats und der Wert des months-Parameters 6 ist, ist das resultierende Jahr das dem angegebenen Jahr folgende Jahr. Der resultierende Monat ist der vierte Monat, und der resultierende Tag ist der 30. Tag, wobei es sich um den letzten Tag des resultierenden Monats handelt.

Wenn der Wert des months-Parameters negativ ist, liegt die resultierende DateTime zeitlich vor der angegebenen DateTime.

Beispiel

Im folgenden Codebeispiel werden die Member der Calendar-Klasse veranschaulicht.

Imports System
Imports System.Globalization


Public Class SamplesCalendar   

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

      ' Uses the default calendar of the InvariantCulture.
      Dim myCal As Calendar = CultureInfo.InvariantCulture.Calendar

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

      ' Adds 5 to every component of the DateTime.
      myDT = myCal.AddYears(myDT, 5)
      myDT = myCal.AddMonths(myDT, 5)
      myDT = myCal.AddWeeks(myDT, 5)
      myDT = myCal.AddDays(myDT, 5)
      myDT = myCal.AddHours(myDT, 5)
      myDT = myCal.AddMinutes(myDT, 5)
      myDT = myCal.AddSeconds(myDT, 5)
      myDT = myCal.AddMilliseconds(myDT, 5)

      ' Displays the values of the DateTime.
      Console.WriteLine("After adding 5 to each component of the DateTime:")
      DisplayValues(myCal, myDT)

   End Sub 'Main

   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("   Hour:         {0}", myCal.GetHour(myDT))
      Console.WriteLine("   Minute:       {0}", myCal.GetMinute(myDT))
      Console.WriteLine("   Second:       {0}", myCal.GetSecond(myDT))
      Console.WriteLine("   Milliseconds: {0}", myCal.GetMilliseconds(myDT))
      Console.WriteLine()
   End Sub 'DisplayValues

End Class 'SamplesCalendar 


'This code produces the following output.

'

'April 3, 2002 of the Gregorian calendar:

'   Era:          1

'   Year:         2002

'   Month:        4

'   DayOfYear:    93

'   DayOfMonth:   3

'   DayOfWeek:    Wednesday

'   Hour:         0

'   Minute:       0

'   Second:       0

'   Milliseconds: 0

'

'After adding 5 to each component of the DateTime:

'   Era:          1

'   Year:         2007

'   Month:        10

'   DayOfYear:    286

'   DayOfMonth:   13

'   DayOfWeek:    Saturday

'   Hour:         5

'   Minute:       5

'   Second:       5

'   Milliseconds: 5
using System;
using System.Globalization;


public class SamplesCalendar  {

   public static void Main()  {

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

      // Uses the default calendar of the InvariantCulture.
      Calendar myCal = CultureInfo.InvariantCulture.Calendar;

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

      // Adds 5 to every component of the DateTime.
      myDT = myCal.AddYears( myDT, 5 );
      myDT = myCal.AddMonths( myDT, 5 );
      myDT = myCal.AddWeeks( myDT, 5 );
      myDT = myCal.AddDays( myDT, 5 );
      myDT = myCal.AddHours( myDT, 5 );
      myDT = myCal.AddMinutes( myDT, 5 );
      myDT = myCal.AddSeconds( myDT, 5 );
      myDT = myCal.AddMilliseconds( myDT, 5 );

      // Displays the values of the DateTime.
      Console.WriteLine( "After adding 5 to each component of the DateTime:" );
      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( "   Hour:         {0}", myCal.GetHour( myDT ) );
      Console.WriteLine( "   Minute:       {0}", myCal.GetMinute( myDT ) );
      Console.WriteLine( "   Second:       {0}", myCal.GetSecond( myDT ) );
      Console.WriteLine( "   Milliseconds: {0}", myCal.GetMilliseconds( myDT ) );
      Console.WriteLine();
   }

}


/*
This code produces the following output.

April 3, 2002 of the Gregorian calendar:
   Era:          1
   Year:         2002
   Month:        4
   DayOfYear:    93
   DayOfMonth:   3
   DayOfWeek:    Wednesday
   Hour:         0
   Minute:       0
   Second:       0
   Milliseconds: 0

After adding 5 to each component of the DateTime:
   Era:          1
   Year:         2007
   Month:        10
   DayOfYear:    286
   DayOfMonth:   13
   DayOfWeek:    Saturday
   Hour:         5
   Minute:       5
   Second:       5
   Milliseconds: 5

*/
using namespace System;
using namespace System::Globalization;
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( "   Hour: {0}", myCal->GetHour( myDT ) );
   Console::WriteLine( "   Minute: {0}", myCal->GetMinute( myDT ) );
   Console::WriteLine( "   Second: {0}", myCal->GetSecond( myDT ) );
   Console::WriteLine( "   Milliseconds: {0}", myCal->GetMilliseconds( myDT ) );
   Console::WriteLine();
}

int main()
{
   
   // Sets a DateTime to April 3, 2002 of the Gregorian calendar.
   DateTime myDT = DateTime(2002,4,3,gcnew GregorianCalendar);
   
   // Uses the default calendar of the InvariantCulture.
   Calendar^ myCal = CultureInfo::InvariantCulture->Calendar;
   
   // Displays the values of the DateTime.
   Console::WriteLine( "April 3, 2002 of the Gregorian calendar:" );
   DisplayValues( myCal, myDT );
   
   // Adds 5 to every component of the DateTime.
   myDT = myCal->AddYears( myDT, 5 );
   myDT = myCal->AddMonths( myDT, 5 );
   myDT = myCal->AddWeeks( myDT, 5 );
   myDT = myCal->AddDays( myDT, 5 );
   myDT = myCal->AddHours( myDT, 5 );
   myDT = myCal->AddMinutes( myDT, 5 );
   myDT = myCal->AddSeconds( myDT, 5 );
   myDT = myCal->AddMilliseconds( myDT, 5 );
   
   // Displays the values of the DateTime.
   Console::WriteLine( "After adding 5 to each component of the DateTime:" );
   DisplayValues( myCal, myDT );
}

/*
This code produces the following output.

April 3, 2002 of the Gregorian calendar:
Era:          1
Year:         2002
Month:        4
DayOfYear:    93
DayOfMonth:   3
DayOfWeek:    Wednesday
Hour:         0
Minute:       0
Second:       0
Milliseconds: 0

After adding 5 to each component of the DateTime:
Era:          1
Year:         2007
Month:        10
DayOfYear:    286
DayOfMonth:   13
DayOfWeek:    Saturday
Hour:         5
Minute:       5
Second:       5
Milliseconds: 5

*/
import System.* ;
import System.Globalization.* ;

public class SamplesCalendar
{
    public static void main(String[] args)
    {
        // Sets a DateTime to April 3, 2002 of the Gregorian calendar.
        DateTime myDT =  new DateTime(2002, 4, 3, new GregorianCalendar());

        // Uses the default calendar of the InvariantCulture.
        Calendar myCal = CultureInfo.get_InvariantCulture().get_Calendar();

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

        // Adds 5 to every component of the DateTime.
        myDT = myCal.AddYears(myDT, 5);
        myDT = myCal.AddMonths(myDT, 5);
        myDT = myCal.AddWeeks(myDT, 5);
        myDT = myCal.AddDays(myDT, 5);
        myDT = myCal.AddHours(myDT, 5);
        myDT = myCal.AddMinutes(myDT, 5);
        myDT = myCal.AddSeconds(myDT, 5);
        myDT = myCal.AddMilliseconds(myDT, 5);

        // Displays the values of the DateTime.
        Console.WriteLine("After adding 5 to each component of the DateTime:");
        DisplayValues(myCal, myDT);
    } //main
   
    public static void DisplayValues(Calendar myCal, DateTime myDT)
    {
        Console.WriteLine("   Era:          {0}", 
            System.Convert.ToString(myCal.GetEra(myDT)));
        Console.WriteLine("   Year:         {0}", 
            System.Convert.ToString(myCal.GetYear(myDT)));
        Console.WriteLine("   Month:        {0}", 
            System.Convert.ToString(myCal.GetMonth(myDT)));
        Console.WriteLine("   DayOfYear:    {0}", 
            System.Convert.ToString(myCal.GetDayOfYear(myDT)));
        Console.WriteLine("   DayOfMonth:   {0}", 
            System.Convert.ToString(myCal.GetDayOfMonth(myDT)));
        Console.WriteLine("   DayOfWeek:    {0}",
            System.Convert.ToString(myCal.GetDayOfWeek(myDT)));
        Console.WriteLine("   Hour:         {0}",
            System.Convert.ToString(myCal.GetHour(myDT)));
        Console.WriteLine("   Minute:       {0}",
            System.Convert.ToString(myCal.GetMinute(myDT)));
        Console.WriteLine("   Second:       {0}", 
            System.Convert.ToString(myCal.GetSecond(myDT)));
        Console.WriteLine("   Milliseconds: {0}", 
            System.Convert.ToString(myCal.GetMilliseconds(myDT)));
        Console.WriteLine();
    } //DisplayValues
} //SamplesCalendar

/*
This code produces the following output.

April 3, 2002 of the Gregorian calendar:
   Era:          1
   Year:         2002
   Month:        4
   DayOfYear:    93
   DayOfMonth:   3
   DayOfWeek:    Wednesday
   Hour:         0
   Minute:       0
   Second:       0
   Milliseconds: 0

After adding 5 to each component of the DateTime:
   Era:          1
   Year:         2007
   Month:        10
   DayOfYear:    286
   DayOfMonth:   13
   DayOfWeek:    Saturday
   Hour:         5
   Minute:       5
   Second:       5
   Milliseconds: 5
*/

Plattformen

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

.NET Compact Framework

Unterstützt in: 2.0, 1.0

Siehe auch

Referenz

Calendar-Klasse
Calendar-Member
System.Globalization-Namespace
System.DateTime
AddYears
AddWeeks
AddDays
AddHours
AddMinutes
AddSeconds
AddMilliseconds