Calendar.AddMonths(DateTime, Int32) Calendar.AddMonths(DateTime, Int32) Calendar.AddMonths(DateTime, Int32) Calendar.AddMonths(DateTime, Int32) Method

정의

파생 클래스에 재정의될 때 지정된 DateTime에서 지정된 월 수만큼 경과한 DateTime을 반환합니다.When overridden in a derived class, returns a DateTime that is the specified number of months away from the specified DateTime.

public:
 abstract DateTime AddMonths(DateTime time, int months);
public abstract DateTime AddMonths (DateTime time, int months);
abstract member AddMonths : DateTime * int -> DateTime
Public MustOverride Function AddMonths (time As DateTime, months As Integer) As DateTime

매개 변수

time
DateTime DateTime DateTime DateTime

월을 더할 DateTime입니다.The DateTime to which to add months.

months
Int32 Int32 Int32 Int32

더할 월 수입니다.The number of months to add.

반환

지정된 DateTime에 지정된 월 수를 더한 결과로 만들어지는 DateTime입니다.The DateTime that results from adding the specified number of months to the specified DateTime.

예외

생성되는 DateTime이 이 달력의 지원되는 범위 밖에 있는 경우The resulting DateTime is outside the supported range of this calendar.

months 값이 지원되는 DateTime 반환 값의 범위 밖에 있는 경우months is outside the supported range of the DateTime return value.

예제

다음 코드 예제에서는의 멤버는 Calendar 클래스입니다.The following code example demonstrates the members of the Calendar class.

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

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

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

설명

months 값이 추가 되는 지정 된 DateTime합니다.The months value is added to the specified DateTime. 하는 경우 months 음수인 경우 결과 DateTime 지정 된 이전의 DateTime합니다.If months is negative, the resulting DateTime is earlier than the specified DateTime.

결과의 일 부분 DateTime 결과 일 결과 결과 연도 월에 유효한 날짜가 아닌 경우 영향을 받습니다.The day part of the resulting DateTime is affected if the resulting day is not a valid day in the resulting month of the resulting year. 결과 결과 연도 월의 마지막 유효 날짜로 변경 됩니다.It is changed to the last valid day in the resulting month of the resulting year. 결과의 연도 부분 DateTime 월의 지정 된 연도 범위를 벗어나는 경우 영향을 받는 DateTime합니다.The year part of the resulting DateTime is affected if the resulting month is outside the year of the specified DateTime. 결과의 연대 부분이 DateTime 지정 된 연대를 벗어나는 결과 연도 DateTime합니다.The era part of the resulting DateTime is affected if the resulting year is outside the era of the specified DateTime. 결과 시간 부분은 DateTime 동일 하 게 유지 된 DateTime합니다.The time-of-day part of the resulting DateTime remains the same as the specified DateTime.

예를 들어, 현재 달력에는 네 번째 월은 30 일 및 10 월 31 일에 12 개월입니다.For example, suppose that the current calendar has 12 months, where the fourth month has 30 days and the tenth month has 31 days. 지정 된 일 그 달의 31 번째 날과 값이 지정된 된 월 10 월 이면는 months 매개 변수가 6 이면 결과 연도가 결과 일은 1-32이 고 지정된 된 연도, 월은 4 월 일, 월의 마지막 날짜입니다.If the specified month is the tenth month, the specified day is the 31st day of that month, and the value of the months parameter is 6, the resulting year is one more than the specified year, the resulting month is the fourth month, and the resulting day is the 30th day, which is the last day of the resulting month.

경우의 값을 months 매개 변수는 음수 이면 결과 DateTime 지정 된 것 보다 이전 DateTime합니다.If the value of the months parameter is negative, the resulting DateTime is earlier than the specified DateTime.

합니다 Kind 반환 된 속성 DateTime 값이 항상 DateTimeKind.Unspecified합니다.The Kind property of the returned DateTime value always equals DateTimeKind.Unspecified. 유지할 수 있습니다는 Kind 의 속성을 time 호출 하 여 매개 변수는 DateTime.SpecifyKind 메서드를 다음 예제와 같이 합니다.You can preserve the Kind property of the time parameter by calling the DateTime.SpecifyKind method, as the following example shows.

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

적용 대상

추가 정보