Поделиться через


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

Комментарии

Например, этот метод возвращает 29 или 30 для Zulhijjah (month = 12) в зависимости от того, является ли year високосным годом.

Применяется к

См. также раздел