JapaneseCalendar.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
연도를 나타내는 정수입니다.
- 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 황제의 통치에 따라 여러 시대를 지원하기 때문에, 당신은 항상이 방법을 호출하고 명시적으로 의도하지 않은 날짜를 방지하고 코드의 의도를 명확하게하기 위해 시대를 지정해야합니다. 이 예제에서는 항상 현재 시대에 있는 날짜와 지정된 시대에 속하는 날짜를 인스턴스화하는 방법을 보여 줍니다.
적용 대상
추가 정보
.NET