PersianCalendar.ToDateTime 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
傳回設定為指定日期、時間和紀元的 DateTime 物件。
public:
override DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era);
public override DateTime ToDateTime (int year, int month, int day, int hour, int minute, int second, int millisecond, int era);
override this.ToDateTime : int * int * int * int * int * int * int * int -> DateTime
Public Overrides Function ToDateTime (year As Integer, month As Integer, day As Integer, hour As Integer, minute As Integer, second As Integer, millisecond As Integer, era As Integer) As DateTime
參數
- year
- Int32
從 1 到 9378 的整數,表示年份。
- month
- Int32
從 1 到 12 的整數,表示月份。
- day
- Int32
1 到 31 的整數,表示日期。
- hour
- Int32
0 到 23 的整數,表示小時。
- minute
- Int32
0 到 59 的整數,表示分鐘。
- second
- Int32
0 到 59 的整數,表示秒鐘。
- millisecond
- Int32
0 到 999 的整數,表示毫秒。
- era
- Int32
從 0 到 1 的整數,表示紀元。
傳回
設定為目前紀元中所指定日期和時間的 DateTime 物件。
例外狀況
year
、month
、day
、hour
、minute
、second
、millisecond
或 era
在這個曆法所支援的範圍之外。
範例
下列程式代碼範例示範 如何使用 ToDateTime 方法。
using System;
using System.Globalization;
class Sample
{
public static void Main()
{
PersianCalendar jc = new PersianCalendar();
DateTime thisDate = DateTime.Now;
//--------------------------------------------------------------------------------
// Properties
//--------------------------------------------------------------------------------
Console.WriteLine("\n........... Selected Properties .....................\n");
Console.Write("Eras:");
foreach (int era in jc.Eras)
{
Console.WriteLine(" era = {0}", era);
}
//--------------------------------------------------------------------------------
Console.WriteLine("\nTwoDigitYearMax = {0}", jc.TwoDigitYearMax);
//--------------------------------------------------------------------------------
// Methods
//--------------------------------------------------------------------------------
Console.WriteLine("\n............ Selected Methods .......................\n");
//--------------------------------------------------------------------------------
Console.WriteLine("GetDayOfYear: day = {0}", jc.GetDayOfYear(thisDate));
//--------------------------------------------------------------------------------
Console.WriteLine("GetDaysInMonth: days = {0}",
jc.GetDaysInMonth( thisDate.Year, thisDate.Month,
PersianCalendar.PersianEra));
//--------------------------------------------------------------------------------
Console.WriteLine("GetDaysInYear: days = {0}",
jc.GetDaysInYear(thisDate.Year, PersianCalendar.PersianEra));
//--------------------------------------------------------------------------------
Console.WriteLine("GetLeapMonth: leap month (if any) = {0}",
jc.GetLeapMonth(thisDate.Year, PersianCalendar.PersianEra));
//-------------------------------------------------------------
Console.WriteLine("GetMonthsInYear: months in a year = {0}",
jc.GetMonthsInYear(thisDate.Year, PersianCalendar.PersianEra));
//--------------------------------------------------------------------------------
Console.WriteLine("IsLeapDay: This is a leap day = {0}",
jc.IsLeapDay(thisDate.Year, thisDate.Month, thisDate.Day,
PersianCalendar.PersianEra));
//--------------------------------------------------------------------------------
Console.WriteLine("IsLeapMonth: This is a leap month = {0}",
jc.IsLeapMonth(thisDate.Year, thisDate.Month,
PersianCalendar.PersianEra));
//--------------------------------------------------------------------------------
Console.WriteLine("IsLeapYear: 1370 is a leap year = {0}",
jc.IsLeapYear(1370, PersianCalendar.PersianEra));
//--------------------------------------------------------------------------------
// Get the 4-digit year for a year whose last two digits are 99. The 4-digit year
// depends on the current value of the TwoDigitYearMax property.
Console.WriteLine("ToFourDigitYear:");
Console.WriteLine(" If TwoDigitYearMax = {0}, ToFourDigitYear(99) = {1}",
jc.TwoDigitYearMax, jc.ToFourDigitYear(99));
jc.TwoDigitYearMax = thisDate.Year;
Console.WriteLine(" If TwoDigitYearMax = {0}, ToFourDigitYear(99) = {1}",
jc.TwoDigitYearMax, jc.ToFourDigitYear(99));
}
}
// The example displays the following output:
// ........... Selected Properties .....................
//
// Eras: era = 1
//
// TwoDigitYearMax = 99
//
// ............ Selected Methods .......................
//
// GetDayOfYear: day = 1
// GetDaysInMonth: days = 31
// GetDaysInYear: days = 365
// GetLeapMonth: leap month (if any) = 0
// GetMonthsInYear: months in a year = 12
// IsLeapDay: This is a leap day = False
// IsLeapMonth: This is a leap month = False
// IsLeapYear: 1370 is a leap year = True
// ToFourDigitYear:
// If TwoDigitYearMax = 99, ToFourDigitYear(99) = 99
// If TwoDigitYearMax = 2012, ToFourDigitYear(99) = 1999
Imports System.Globalization
Class Sample
Public Shared Sub Main()
'--------------------------------------------------------------------------------
' Get today's date.
'--------------------------------------------------------------------------------
Dim jc As New PersianCalendar()
Dim thisDate As Date = Date.Now
'--------------------------------------------------------------------------------
' Properties
'--------------------------------------------------------------------------------
Console.WriteLine(vbCrLf & _
"........... Selected Properties ....................." & vbCrLf)
Console.Write("Eras:")
Dim era As Integer
For Each era In jc.Eras
Console.WriteLine(" era = {0}", era)
Next era
'--------------------------------------------------------------------------------
Console.WriteLine("TwoDigitYearMax = {0}", jc.TwoDigitYearMax)
'--------------------------------------------------------------------------------
' Methods
'--------------------------------------------------------------------------------
Console.WriteLine(vbCrLf & _
"............ Selected Methods ......................." & vbCrLf)
'--------------------------------------------------------------------------------
Console.WriteLine("GetDayOfYear: day = {0}", jc.GetDayOfYear(thisDate))
'--------------------------------------------------------------------------------
Console.WriteLine("GetDaysInMonth: days = {0}", _
jc.GetDaysInMonth(thisDate.Year, _
thisDate.Month, _
PersianCalendar.PersianEra))
'--------------------------------------------------------------------------------
Console.WriteLine("GetDaysInYear: days = {0}", _
jc.GetDaysInYear(thisDate.Year, PersianCalendar.PersianEra))
'--------------------------------------------------------------------------------
Console.WriteLine("GetLeapMonth: leap month (if any) = {0}", _
jc.GetLeapMonth(thisDate.Year, PersianCalendar.PersianEra))
'--------------------------------------------------------------------------------
Console.WriteLine("GetMonthsInYear: months in a year = {0}", _
jc.GetMonthsInYear(thisDate.Year, PersianCalendar.PersianEra))
'--------------------------------------------------------------------------------
Console.WriteLine("IsLeapDay: This is a leap day = {0}", _
jc.IsLeapDay(thisDate.Year, _
thisDate.Month, thisDate.Day, _
PersianCalendar.PersianEra))
'--------------------------------------------------------------------------------
Console.WriteLine("IsLeapMonth: This is a leap month = {0}", _
jc.IsLeapMonth(thisDate.Year, _
thisDate.Month, _
PersianCalendar.PersianEra))
'--------------------------------------------------------------------------------
Console.WriteLine("IsLeapYear: 1370 is a leap year = {0}", _
jc.IsLeapYear(1370, PersianCalendar.PersianEra))
'--------------------------------------------------------------------------------
' Get the 4-digit year for a year whose last two digits are 99. The 4-digit year
' depends on the current value of the TwoDigitYearMax property.
Console.WriteLine("ToFourDigitYear:")
Console.WriteLine(" If TwoDigitYearMax = {0}, ToFourDigitYear(99) = {1}", _
jc.TwoDigitYearMax, jc.ToFourDigitYear(99))
jc.TwoDigitYearMax = thisDate.Year
Console.WriteLine(" If TwoDigitYearMax = {0}, ToFourDigitYear(99) = {1}", _
jc.TwoDigitYearMax, jc.ToFourDigitYear(99))
End Sub
End Class
' The example displays output like the following:
' ........... Seleted Properties .....................
'
' Eras: era = 1
'
' TwoDigitYearMax = 99
'
' ............ Selected Methods .......................
'
' GetDayOfYear: day = 1
' GetDaysInMonth: days = 31
' GetDaysInYear: days = 365
' GetLeapMonth: leap month (if any) = 0
' GetMonthsInYear: months in a year = 12
' IsLeapDay: This is a leap day = False
' IsLeapMonth: This is a leap month = False
' IsLeapYear: 1370 is a leap year = True
' ToFourDigitYear:
' If TwoDigitYearMax = 99, ToFourDigitYear(99) = 99
' If TwoDigitYearMax = 2012, ToFourDigitYear(99) = 1999
備註
方法 ToDateTime 很有用,因為它可以將目前行事曆中的任何日期轉換為公曆日期。 例如,您可以接著使用公曆日期來比較不同行事曆中的日期,或在特定的行事曆中建立相等的日期。