JapaneseCalendar.ToDateTime 메서드

정의

지정된 연대의 지정된 날짜와 시간으로 설정된 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

연도를 나타내는 정수입니다.

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

연대를 나타내는 정수입니다.

반환

현재 연대의 지정된 날짜와 시간으로 설정된 DateTime입니다.

예외

year가 달력에서 지원하는 범위 밖에 있는 경우

또는

month가 달력에서 지원하는 범위 밖에 있는 경우

또는

day가 달력에서 지원하는 범위 밖에 있는 경우

또는

hour가 0보다 작거나 23보다 큽니다.

또는

minute가 0보다 작거나 59보다 큽니다.

또는

second가 0보다 작거나 59보다 큽니다.

또는

millisecond가 0보다 작거나 999보다 큽니다.

또는

era가 달력에서 지원하는 범위 밖에 있는 경우

예제

다음 예제에서는 두 날짜를 인스턴스화합니다. 첫 번째는 항상 현재 시대의 두 번째 해의 첫 번째 날이며, 두 번째는 타이쇼 시대의 특정 날을 식별합니다. 예제의 출력은 현재 시대로 헤이세이 시대와 함께 생산되었다.

using System;
using System.Globalization;

class Program
{
    static void Main()
    {
        var cal = new JapaneseCalendar();
        var jaJp = new CultureInfo("ja-JP");
        jaJp.DateTimeFormat.Calendar = cal;
        var date1 = cal.ToDateTime(2,1,1,0,0,0,0,JapaneseCalendar.CurrentEra);
        Console.WriteLine($"Japanese calendar date: {date1.ToString("D", jaJp)}, " +
                          $"Gregorian calendar date: {date1.ToString("D", CultureInfo.InvariantCulture)}");

        var date2 = cal.ToDateTime(6,11,7,0,0,0,0,GetEraIndex("大正"));
        Console.WriteLine($"Japanese calendar date: {date2.ToString("D", jaJp)}, " +
                          $"Gregorian calendar date: {date2.ToString("D", CultureInfo.InvariantCulture)}");

        int GetEraIndex(string eraName)
        {
           foreach (var ctr in cal.Eras)
              if (jaJp.DateTimeFormat.GetEraName(ctr) == eraName)
                 return ctr;

           return 0; 
        }
    }
}
// The example displays the following output:
//   Japanese calendar date: 平成2年1月1日, Gregorian calendar date: Monday, 01 January 1990
//   Japanese calendar date: 大正6年11月7日, Gregorian calendar date: Wednesday, 07 November 1917
Imports System.Globalization

Module Program
    Dim cal As Calendar
    Dim jaJp As CultureInfo
    
    Public Sub Main()
        cal = New JapaneseCalendar()
        jaJp = New CultureInfo("ja-JP")
        jaJp.DateTimeFormat.Calendar = cal
        Dim date1 = cal.ToDateTime(2,1,1,0,0,0,0,JapaneseCalendar.CurrentEra)
        Console.WriteLine($"Japanese calendar date: {date1.ToString("D", jaJp)}, " +
                          $"Gregorian calendar date: {date1.ToString("D", CultureInfo.InvariantCulture)}")

        Dim date2 = cal.ToDateTime(6,11,7,0,0,0,0,GetEraIndex("大正"))
        Console.WriteLine($"Japanese calendar date: {date2.ToString("D", jaJp)}, " +
                          $"Gregorian calendar date: {date2.ToString("D", CultureInfo.InvariantCulture)}")
    End Sub

    Private Function GetEraIndex(eraName As String) As Integer
        For Each ctr in cal.Eras
            If jaJp.DateTimeFormat.GetEraName(ctr) = eraName Then Return ctr
        Next

        Return 0 
    End Function
End Module
' The example displays the following output:
'   Japanese calendar date: 平成2年1月1日, Gregorian calendar date: Monday, 01 January 1990
'   Japanese calendar date: 大正6年11月7日, Gregorian calendar date: Wednesday, 07 November 1917

설명

메서드는 ToDateTime 현재 달력의 모든 날짜를 그레고리오력 날짜로 변환할 수 있기 때문에 유용합니다. 예를 들어, 그레고리오날짜를 사용하여 다른 달력의 날짜를 비교하거나 특정 달력에 해당하는 날짜를 만들 수 있습니다.

JapaneseCalendar 황제의 통치에 따라 여러 시대를 지원하기 때문에, 당신은 항상이 방법을 호출하고 명시적으로 의도하지 않은 날짜를 방지하고 코드의 의도를 명확하게하기 위해 시대를 지정해야합니다. 이 예제에서는 항상 현재 시대에 있는 날짜와 지정된 시대에 속하는 날짜를 인스턴스화하는 방법을 보여 줍니다.

적용 대상

추가 정보