情報
要求されたトピックは次のとおりです。しかし、このトピックはこのライブラリには含まれていません。

KoreanCalendar.AddMonths メソッド

2013/12/12

指定した DateTime から指定した月数が経過した後の DateTime を返します。

Namespace:  System.Globalization
アセンブリ:  mscorlib (mscorlib.dll 内)

public override DateTime AddMonths(
	DateTime time,
	int months
)

パラメーター

time
型: System.DateTime
月数を加算する対象の DateTime
months
型: System.Int32
加算する月数。

戻り値

型: System.DateTime
指定した DateTime に指定した月数を加算した結果の DateTime

例外条件
ArgumentOutOfRangeException

months が -120000 未満です。

または

months が 120000 より大きい値です。

結果として得られる日が、結果の年の結果の月に対して有効な日でない場合は、結果として得られる DateTime の日付部分が影響を受けます。この日付は、結果の年の結果の月にとって有効な最後の日付に変更されます。結果として得られる月が、指定した DateTime の年の範囲外の場合、結果として得られる DateTime の年の部分に影響します。この実装では、現在の時代 (年号) だけをサポートしています。したがって、結果として得られた年が、指定された DateTime の時代 (年号) の範囲外の場合、ArgumentException がスローされます。結果として得られる DateTime の時刻の部分は、指定した DateTime の値と同じままです。

たとえば、指定した月が 31 日まである 10 月で、指定した日がその月の 31 番目の日であり、months パラメーターの値が 6 の場合、結果として得られる年は指定した年より 1 大きい年、月は 4 月、日は 4 月の最終日である 30 日になります。

months パラメーターの値が負の場合、結果の DateTime は、指定した DateTime よりも前の値になります。

返される DateTime 値の Kind プロパティは、常に DateTimeKind.Unspecified と同じになります。次の例に示すように、DateTime.SpecifyKind メソッドを呼び出すことにより、time パラメーターの Kind プロパティを保持できます。


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


DateTime のいくつかのコンポーネントの値を韓国暦で表示する例を次に示します。


using System;
using System.Globalization;


public class Example
{

   public static void Demo(System.Windows.Controls.TextBlock outputBlock)
   {

      // 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 KoreanCalendar.
      KoreanCalendar myCal = new KoreanCalendar();

      // Displays the values of the DateTime.
      outputBlock.Text += String.Format("April 3, 2002 of the Gregorian calendar equals the following in the Korean calendar:") + "\n";
      DisplayValues(outputBlock, myCal, myDT);

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

      // Displays the values of the DateTime.
      outputBlock.Text += "After adding two years and ten months:" + "\n";
      DisplayValues(outputBlock, myCal, myDT);

   }

   public static void DisplayValues(System.Windows.Controls.TextBlock outputBlock, Calendar myCal, DateTime myDT)
   {
      outputBlock.Text += String.Format("   Era:        {0}", myCal.GetEra(myDT)) + "\n";
      outputBlock.Text += String.Format("   Year:       {0}", myCal.GetYear(myDT)) + "\n";
      outputBlock.Text += String.Format("   Month:      {0}", myCal.GetMonth(myDT)) + "\n";
      outputBlock.Text += String.Format("   DayOfYear:  {0}", myCal.GetDayOfYear(myDT)) + "\n";
      outputBlock.Text += String.Format("   DayOfMonth: {0}", myCal.GetDayOfMonth(myDT)) + "\n";
      outputBlock.Text += String.Format("   DayOfWeek:  {0}", myCal.GetDayOfWeek(myDT)) + "\n";
      outputBlock.Text += "\n";
   }

}

/*
This code produces the following output.

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

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

*/


Windows Phone OS

サポート: 8.0, 7.1, 7.0

表示: