HijriCalendar.GetDaysInMonth(Int32, Int32, Int32) 方法

定义

返回指定纪元年份中指定月份的天数。

public:
 override int GetDaysInMonth(int year, int month, int era);
public override int GetDaysInMonth (int year, int month, int era);
override this.GetDaysInMonth : int * int * int -> int
Public Overrides Function GetDaysInMonth (year As Integer, month As Integer, era As Integer) As Integer

参数

year
Int32

一个整数,用于表示年份。

month
Int32

1 到 12 之间的一个整数,用于表示月份。

era
Int32

一个整数,用于表示纪元。

返回

指定纪元中指定年份的指定月份中的天数。

例外

era 超出了此日历支持的范围。

- 或 -

year 超出了此日历支持的范围。

- 或 -

month 超出了此日历支持的范围。

示例

下面的代码示例调用 GetDaysInMonth 每个时代中每五年的第十二个月。

using namespace System;
using namespace System::Globalization;
int main()
{
   
   // Creates and initializes a HijriCalendar.
   HijriCalendar^ myCal = gcnew HijriCalendar;
   
   // Displays the header.
   Console::Write( "YEAR\t" );
   for ( int y = 1421; y <= 1425; y++ )
      Console::Write( "\t {0}", y );
   Console::WriteLine();
   
   // Displays the value of the CurrentEra property.
   Console::Write( "CurrentEra:" );
   for ( int y = 1421; y <= 1425; y++ )
      Console::Write( "\t {0}", myCal->GetDaysInMonth( y, 12, HijriCalendar::CurrentEra ) );
   Console::WriteLine();
   
   // Displays the values in the Eras property.
   for ( int i = 0; i < myCal->Eras->Length; i++ )
   {
      Console::Write( "Era {0}:\t", myCal->Eras[ i ] );
      for ( int y = 1421; y <= 1425; y++ )
         Console::Write( "\t {0}", myCal->GetDaysInMonth( y, 12, myCal->Eras[ i ] ) );
      Console::WriteLine();

   }
}

/*
This code produces the following output. The results might vary depending on
the settings in Regional and Language Options (or Regional Options or Regional Settings).

YEAR            1421    1422    1423    1424    1425
CurrentEra:     29      29      30      29      29
Era 1:          29      29      30      29      29

*/
using System;
using System.Globalization;

public class SamplesHijriCalendar  {

   public static void Main()  {

      // Creates and initializes a HijriCalendar.
      HijriCalendar myCal = new HijriCalendar();

      // Displays the header.
      Console.Write( "YEAR\t" );
      for ( int y = 1421; y <= 1425; y++ )
         Console.Write( "\t{0}", y );
      Console.WriteLine();

      // Displays the value of the CurrentEra property.
      Console.Write( "CurrentEra:" );
      for ( int y = 1421; y <= 1425; y++ )
         Console.Write( "\t{0}", myCal.GetDaysInMonth( y, 12, HijriCalendar.CurrentEra ) );
      Console.WriteLine();

      // Displays the values in the Eras property.
      for ( int i = 0; i < myCal.Eras.Length; i++ )  {
         Console.Write( "Era {0}:\t", myCal.Eras[i] );
         for ( int y = 1421; y <= 1425; y++ )
            Console.Write( "\t{0}", myCal.GetDaysInMonth( y, 12, myCal.Eras[i] ) );
         Console.WriteLine();
      }
   }
}

/*
This code produces the following output. The results might vary depending on
the settings in Regional and Language Options (or Regional Options or Regional Settings).

YEAR            1421    1422    1423    1424    1425
CurrentEra:     29      29      30      29      29
Era 1:          29      29      30      29      29

*/
Imports System.Globalization

Public Class SamplesHijriCalendar   
   
   Public Shared Sub Main()

      ' Creates and initializes a HijriCalendar.
      Dim myCal As New HijriCalendar()

      ' Displays the header.
      Console.Write("YEAR" + ControlChars.Tab)
      Dim y As Integer
      For y = 1421 To 1425
         Console.Write(ControlChars.Tab + "{0}", y)
      Next y
      Console.WriteLine()

      ' Displays the value of the CurrentEra property.
      Console.Write("CurrentEra:")
      For y = 1421 To 1425
         Console.Write(ControlChars.Tab + "{0}", myCal.GetDaysInMonth(y, 12, HijriCalendar.CurrentEra))
      Next y
      Console.WriteLine()

      ' Displays the values in the Eras property.
      Dim i As Integer
      For i = 0 To myCal.Eras.Length - 1
         Console.Write("Era {0}:" + ControlChars.Tab, myCal.Eras(i))
         For y = 1421 To 1425
            Console.Write(ControlChars.Tab + "{0}", myCal.GetDaysInMonth(y, 12, myCal.Eras(i)))
         Next y
         Console.WriteLine()
      Next i

   End Sub

End Class


'This code produces the following output. The results might vary depending on
'the settings in Regional and Language Options (or Regional Options or Regional Settings).
'
'YEAR            1421    1422    1423    1424    1425
'CurrentEra:     29      29      30      29      29
'Era 1:          29      29      30      29      29

注解

例如,此方法为 Zulhijjah 返回 29 或 30, (month = 12) ,具体取决于是否 year 为闰年。

适用于

另请参阅