共用方式為


UmAlQuraCalendar.GetDaysInYear(Int32, Int32) 方法

定義

計算指定紀元的指定年份中的天數。

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

參數

year
Int32

一年。

era
Int32

一紀元。 指定 UmAlQuraCalendar.Eras[UmAlQuraCalendar.CurrentEra]UmAlQuraEra

傳回

指定年份和紀元中的天數。 一般年份有 354 天,閏年有 355 天。

例外狀況

yearera 不在 UmAlQuraCalendar 類別支援的範圍內。

範例

下列範例會呼叫 GetDaysInYear 方法,以取得 類別所支援 UmAlQuraCalendar 每個紀元中連續十年的天數。

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      Calendar cal = new UmAlQuraCalendar();
      int currentYear = cal.GetYear(DateTime.Now);

      Console.WriteLine("Era     Year     Days\n");
      foreach (int era in cal.Eras) {
         for (int year = currentYear; year <= currentYear + 9; year++) {
            Console.WriteLine("{0}{1}      {2}      {3}",
                              ShowCurrentEra(cal, era), era, year,
                              cal.GetDaysInYear(year, era));
         }
      }
      Console.WriteLine("\n   * Indicates the current era.");
   }

   private static string ShowCurrentEra(Calendar cal, int era)
   {
      if (era == cal.Eras[Calendar.CurrentEra])
         return "*";
      else
         return " ";
   }
}
// The example displays the following output:
//       Era     Year     Days
//
//       *1      1431      354
//       *1      1432      354
//       *1      1433      355
//       *1      1434      354
//       *1      1435      355
//       *1      1436      354
//       *1      1437      354
//       *1      1438      354
//       *1      1439      355
//       *1      1440      354
//
//          * Indicates the current era.
Imports System.Globalization

Module Example
   Public Sub Main()
      Dim cal As New UmAlQuraCalendar()
      Dim currentYear As Integer = cal.GetYear(Date.Now)
      
      Console.WriteLine("Era     Year     Days")
      Console.WriteLine()
      For Each era As Integer In cal.Eras
         For year As Integer = currentYear To currentYear + 9
            Console.WriteLine("{0}{1}      {2}      {3}", 
                              ShowCurrentEra(cal, era), era, year, 
                              cal.GetDaysInYear(year, era))   
         Next     
      Next   
      Console.WriteLine()
      Console.WriteLine("   * Indicates the current era.")
   End Sub
   
   Private Function ShowCurrentEra(cal As Calendar, era As Integer) As String
      If era = cal.Eras(Calendar.CurrentEra) Then
         Return "*"
      Else
         Return " "
      End If   
   End Function
End Module
' The example displays the following output:
'       Era     Year     Days
'       
'       *1      1431      354
'       *1      1432      354
'       *1      1433      355
'       *1      1434      354
'       *1      1435      355
'       *1      1436      354
'       *1      1437      354
'       *1      1438      354
'       *1      1439      355
'       *1      1440      354
'       
'          * Indicates the current era.

適用於

另請參閱