UmAlQuraCalendar.AddYears(DateTime, Int32) UmAlQuraCalendar.AddYears(DateTime, Int32) UmAlQuraCalendar.AddYears(DateTime, Int32) UmAlQuraCalendar.AddYears(DateTime, Int32) Method

定義

指定した初期日付から指定した年数が経過した後の日付を計算します。Calculates a date that is a specified number of years away from a specified initial date.

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

パラメーター

time
DateTime DateTime DateTime DateTime

年数を加算する対象の日付。The date to which to add years. UmAlQuraCalendar クラスでは、04/30/1900 00.00.00 (グレゴリオ暦) から 11/16/2077 23:59:59 (グレゴリオ暦) までの日付しかサポートしていません。The UmAlQuraCalendar class supports only dates from 04/30/1900 00.00.00 (Gregorian date) through 11/16/2077 23:59:59 (Gregorian date).

years
Int32 Int32 Int32 Int32

正または負の、加算する年数。The positive or negative number of years to add.

戻り値

years パラメーターで指定した年数を time パラメーターで指定した日付に加算することで得られる日付。The date yielded by adding the number of years specified by the years parameter to the date specified by the time parameter.

例外

結果として得られる日付が UmAlQuraCalendar クラスでサポートされている範囲外の値です。The resulting date is outside the range supported by the UmAlQuraCalendar class.

years が -10,000 未満であるか、または 10,000 を超えています。years is less than -10,000 or greater than 10,000.

または-or- time が、このカレンダーでサポートされている範囲外です。time is outside the range supported by this calendar.

次の例では、インスタンス化、DateTime値し、そのコンポーネントのいくつかの値ウムアルクラ暦で表示されます。The following example instantiates a DateTime value and displays the values of several of its components in the Um AL Qura calendar. 次に、呼び出し、AddYearsAddMonthsウムアルクラ暦で日付値に 2 年 10 か月を追加するメソッド。Next, it calls the AddYears and AddMonths methods to add 2 years and 10 months in the Um Al Qura calendar to the date value. 最後に、ウムアルクラ暦のこと、もう一度これらの日付要素の値を表示します。Finally, it again displays the values of these date components in the Um Al Qura calendar.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      DateTime date1 = new DateTime(2011, 4, 3, new GregorianCalendar());
      Calendar cal = new UmAlQuraCalendar();
      
      Console.WriteLine("{0:MMMM d, yyyy} in the Gregorian calendar is equivalent to:", date1);
      DisplayCalendarInfo(cal, date1);
            
      // Add 2 years and 10 months by calling UmAlQuraCalendar methods.
      date1 = cal.AddYears(date1, 2);
      date1 = cal.AddMonths(date1, 10);       

      Console.WriteLine("After adding 2 years and 10 months in the {0} calendar,", 
                        GetCalendarName(cal));
      Console.WriteLine("{0:MMMM d, yyyy} in the Gregorian calendar is equivalent to:", date1);
      DisplayCalendarInfo(cal, date1);
   }

   private static void DisplayCalendarInfo(Calendar cal, DateTime date1)
   {
      Console.WriteLine("   Calendar:   {0}", GetCalendarName(cal));    
      Console.WriteLine("   Era:        {0}", cal.GetEra(date1));
      Console.WriteLine("   Year:       {0}", cal.GetYear(date1));
      Console.WriteLine("   Month:      {0}", cal.GetMonth(date1));
      Console.WriteLine("   DayOfYear:  {0}", cal.GetDayOfYear(date1));
      Console.WriteLine("   DayOfMonth: {0}", cal.GetDayOfMonth(date1));
      Console.WriteLine("   DayOfWeek:  {0}\n", cal.GetDayOfWeek(date1));
   }

   private static string GetCalendarName(Calendar cal)
   {
      return cal.ToString().Replace("System.Globalization.", "").
             Replace("Calendar", "");   
   }
}
// The example displays the following output:
//    April 3, 2011 in the Gregorian calendar is equivalent to:
//       Calendar:   UmAlQura
//       Era:        1
//       Year:       1432
//       Month:      4
//       DayOfYear:  118
//       DayOfMonth: 29
//       DayOfWeek:  Sunday
//    
//    After adding 2 years and 10 months in the UmAlQura calendar,
//    January 1, 2014 in the Gregorian calendar is equivalent to:
//       Calendar:   UmAlQura
//       Era:        1
//       Year:       1435
//       Month:      2
//       DayOfYear:  59
//       DayOfMonth: 29
//       DayOfWeek:  Wednesday
Imports System.Globalization

Module Example
   Public Sub Main()
      Dim date1 As Date = New Date(2011, 4, 3, New GregorianCalendar())
      Dim cal As New UmAlQuraCalendar()
      
      Console.WriteLine("{0:MMMM d, yyyy} in the Gregorian calendar is equivalent to:", date1)
      DisplayCalendarInfo(cal, date1)
            
      ' Add 2 years and 10 months by calling UmAlQuraCalendar methods.
      date1 = cal.AddYears(date1, 2)
      date1 = cal.AddMonths(date1, 10)       

      Console.WriteLine("After adding 2 years and 10 months in the {0} calendar,", 
                        GetCalendarName(cal))
      Console.WriteLine("{0:MMMM d, yyyy} in the Gregorian calendar is equivalent to:", date1)
      DisplayCalendarInfo(cal, date1)
   End Sub
   
   Private Sub DisplayCalendarInfo(cal As Calendar, date1 As Date)
      Console.WriteLine("   Calendar:   {0}", GetCalendarName(cal))    
      Console.WriteLine("   Era:        {0}", cal.GetEra(date1))
      Console.WriteLine("   Year:       {0}", cal.GetYear(date1))
      Console.WriteLine("   Month:      {0}", cal.GetMonth(date1))
      Console.WriteLine("   DayOfYear:  {0}", cal.GetDayOfYear(date1))
      Console.WriteLine("   DayOfMonth: {0}", cal.GetDayOfMonth(date1))
      Console.WriteLine("   DayOfWeek:  {0}", cal.GetDayOfWeek(date1))
      Console.WriteLine()
   End Sub
   
   Private Function GetCalendarName(cal As Calendar) As String
      Return cal.ToString().Replace("System.Globalization.", "").
             Replace("Calendar", "")   
   End Function
End Module
' The example displays the following output:
'    April 3, 2011 in the Gregorian calendar is equivalent to:
'       Calendar:   UmAlQura
'       Era:        1
'       Year:       1432
'       Month:      4
'       DayOfYear:  118
'       DayOfMonth: 29
'       DayOfWeek:  Sunday
'    
'    After adding 2 years and 10 months in the UmAlQura calendar,
'    January 1, 2014 in the Gregorian calendar is equivalent to:
'       Calendar:   UmAlQura
'       Era:        1
'       Year:       1435
'       Month:      2
'       DayOfYear:  59
'       DayOfMonth: 29
'       DayOfWeek:  Wednesday

注釈

結果の日の部分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 month part of the resulting DateTime remains the same as the specified DateTime. この実装では、現在の時代をサポートします。This implementation supports only the current era. 結果の年が指定した時代 (年号) を超えた場合、そのため、例外がスローされますDateTimeします。Therefore, an exception is thrown 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 日間を除く 29 日が。For example, Zulhijjah has 29 days, except during leap years when it has 30 days. 指定した日付がうるう年の閏年の 30 日と値の場合、yearsパラメーターが 1、結果として得られる日付は、次の年の閏年 29 日。If the specified date is the 30th day of Zulhijjah in a leap year and the value of the years parameter is 1, the resulting date is the 29th day of Zulhijjah in the following year.

場合yearsが負の場合、その結果DateTimeが、指定よりも前DateTimeします。If years is negative, the resulting DateTime is earlier than the specified DateTime.

Kind 、返されたプロパティDateTime常に equals を値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.AddYears(time, years), time.Kind);
returnTime = DateTime.SpecifyKind(cal.AddYears(time, years), time.Kind)

適用対象