UmAlQuraCalendar.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
Эра. Следует задать UmAlQuraCalendar.Eras[UmAlQuraCalendar.CurrentEra]
или UmAlQuraEra.
Возвращаемое значение
Число дней в указанном месяце указанных года и эры. Возвращенное значение равно 29 месяцам для обычного года или 30 для високосного.
Исключения
Параметры year
, month
или era
находятся вне поддерживаемого диапазона значений класса UmAlQuraCalendar.
Примеры
В следующем примере метод вызывается GetDaysInMonth для получения количества дней в каждом месяце пяти последовательных лет.
using System;
using System.Collections.Generic;
using System.Globalization;
public class Example
{
public static void Main()
{
UmAlQuraCalendar cal = new UmAlQuraCalendar();
List<string> months = new List<string>();
string output = String.Empty;
// Get the current year in the UmAlQura calendar.
int startYear = cal.GetYear(DateTime.Now);
// Display the number of days in each month for the next five years.
Console.WriteLine(" Days in Each Month, {0} to {1}\n",
startYear, startYear + 4);
Console.WriteLine("Month {0} {1} {2} {3} {4}",
startYear, startYear + 1, startYear + 2, startYear + 3,
startYear + 4);
for (int year = startYear; year <= startYear + 4; year++) {
int days;
for (int month = 1; month <= cal.GetMonthsInYear(year, UmAlQuraCalendar.UmAlQuraEra);
month++)
{
days = cal.GetDaysInMonth(year, month,
UmAlQuraCalendar.UmAlQuraEra);
output = String.Format("{0} ", days);
if (months.Count < month)
months.Add(String.Format("{0,4} {1}",
month, output));
else
months[month - 1] += " " + output;
}
}
foreach (var item in months)
Console.WriteLine(item);
}
}
// The example displays the following output:
// Days in Each Month, 1431 to 1435
//
// Month 1431 1432 1433 1434 1435
// 1 29 29 30 29 30
// 2 30 30 29 30 29
// 3 30 30 30 29 30
// 4 29 30 30 30 29
// 5 30 29 29 29 30
// 6 29 30 30 30 29
// 7 30 29 30 30 30
// 8 29 30 29 29 29
// 9 30 29 30 30 30
// 10 29 30 29 30 30
// 11 29 29 30 29 29
// 12 30 29 29 29 30
Imports System.Collections.Generic
Imports System.Globalization
Module Example
Public Sub Main()
Dim cal As New UmAlQuraCalendar()
Dim months As New List(Of String)
Dim output As String = String.Empty
' Get the current year in the UmAlQura calendar.
Dim startYear As Integer = cal.GetYear(Date.Now)
' Display the number of days in each month for the next five years.
Console.WriteLine(" Days in Each Month, {0} to {1}",
startYear, startYear + 4)
Console.WriteLine()
Console.WriteLine("Month {0} {1} {2} {3} {4}",
startYear, startYear + 1, startYear + 2,
startYear + 3, startYear + 4)
For year As Integer = startYear To startYear + 4
Dim days As Integer
For month As Integer = 1 To _
cal.GetMonthsInYear(year, UmAlQuraCalendar.UmALQuraEra)
days = cal.GetDaysInMonth(year, month,
UmAlQuraCalendar.UmALQuraEra)
output = String.Format("{0} ", days)
If months.Count < month Then
months.Add(String.Format("{0,4} {1}",
month, output))
Else
months.Item(month - 1) += " " + output
End If
Next
Next
For Each item In months
Console.WriteLine(item)
Next
End Sub
End Module
' The example displays the following output:
' Days in Each Month, 1431 to 1435
'
' Month 1431 1432 1433 1434 1435
' 1 29 29 30 29 30
' 2 30 30 29 30 29
' 3 30 30 30 29 30
' 4 29 30 30 30 29
' 5 30 29 29 29 30
' 6 29 30 30 30 29
' 7 30 29 30 30 30
' 8 29 30 29 29 29
' 9 30 29 30 30 30
' 10 29 30 29 30 30
' 11 29 29 30 29 29
' 12 30 29 29 29 30
Комментарии
Этот метод возвращает разное количество дней в указанном месяце для обычного года и високосного года. Например, этот метод возвращает 29 или 30 для Zulhijjah (month
= 12) в зависимости от того, является ли year
високосным годом.