DateTimeOffset.ToLocalTime 메서드

정의

현재 DateTimeOffset 개체를 현지 시간을 나타내는 DateTimeOffset 개체로 변환합니다.Converts the current DateTimeOffset object to a DateTimeOffset object that represents the local time.

public:
 DateTimeOffset ToLocalTime();
public DateTimeOffset ToLocalTime ();
member this.ToLocalTime : unit -> DateTimeOffset
Public Function ToLocalTime () As DateTimeOffset

반환

현지 시간으로 변환된 현재 DateTimeOffset 개체의 날짜와 시간을 나타내는 개체입니다.An object that represents the date and time of the current DateTimeOffset object converted to local time.

예제

다음 예제에서는 ToLocalTime 메서드를 사용 하 여 DateTimeOffset 값을 태평양 표준 시간대의 현지 시간으로 변환 합니다.The following example uses the ToLocalTime method to convert a DateTimeOffset value to local time in the Pacific Standard Time zone. 현지 표준 시간대의 조정 규칙에 대 한 메서드의 지원을 보여 줍니다.It also illustrates the method's support for the local time zone's adjustment rules.

// Local time changes on 3/11/2007 at 2:00 AM
DateTimeOffset originalTime, localTime;

originalTime = new DateTimeOffset(2007, 3, 11, 3, 0, 0, 
                                  new TimeSpan(-6, 0, 0));
localTime = originalTime.ToLocalTime();
Console.WriteLine("Converted {0} to {1}.", originalTime.ToString(), 
                                           localTime.ToString());   

originalTime = new DateTimeOffset(2007, 3, 11, 4, 0, 0, 
                                  new TimeSpan(-6, 0, 0));
localTime = originalTime.ToLocalTime();
Console.WriteLine("Converted {0} to {1}.", originalTime.ToString(), 
                                           localTime.ToString());    

// Define a summer UTC time
originalTime = new DateTimeOffset(2007, 6, 15, 8, 0, 0, 
                                  TimeSpan.Zero);
localTime = originalTime.ToLocalTime();
Console.WriteLine("Converted {0} to {1}.", originalTime.ToString(),
                                           localTime.ToString());    

// Define a winter time
originalTime = new DateTimeOffset(2007, 11, 30, 14, 0, 0, 
                                  new TimeSpan(3, 0, 0));
localTime = originalTime.ToLocalTime();
Console.WriteLine("Converted {0} to {1}.", originalTime.ToString(), 
                                           localTime.ToString());
// The example produces the following output:
//    Converted 3/11/2007 3:00:00 AM -06:00 to 3/11/2007 1:00:00 AM -08:00.
//    Converted 3/11/2007 4:00:00 AM -06:00 to 3/11/2007 3:00:00 AM -07:00.
//    Converted 6/15/2007 8:00:00 AM +00:00 to 6/15/2007 1:00:00 AM -07:00.
//    Converted 11/30/2007 2:00:00 PM +03:00 to 11/30/2007 3:00:00 AM -08:00.                                                           
' Local time changes on 3/11/2007 at 2:00 AM
Dim originalTime, localTime As DateTimeOffset

originalTime = New DateTimeOffset(#03/11/2007 3:00AM#, _
                                  New TimeSpan(-6, 0, 0))
localTime = originalTime.ToLocalTime()
Console.WriteLine("Converted {0} to {1}.", originalTime.ToString(), _
                                           localTime.ToString())       

originalTime = New DateTimeOffset(#03/11/2007 4:00AM#, _
                                  New TimeSpan(-6, 0, 0))
localTime = originalTime.ToLocalTime()
Console.WriteLine("Converted {0} to {1}.", originalTime.ToString(), _
                                           localTime.ToString())       

' Define a summer UTC time
originalTime = New DateTimeOffset(#6/15/2007 8:00AM#, _
                                  TimeSpan.Zero)
localTime = originalTime.ToLocalTime()
Console.WriteLine("Converted {0} to {1}.", originalTime.ToString(), _
                                           localTime.ToString())       

' Define a winter time
originalTime = New DateTimeOffset(#11/30/2007 2:00PM#, _
                                  New TimeSpan(3, 0, 0))
localTime = originalTime.ToLocalTime()
Console.WriteLine("Converted {0} to {1}.", originalTime.ToString(), _
                                           localTime.ToString())   
' The example produces the following output:
'    Converted 3/11/2007 3:00:00 AM -06:00 to 3/11/2007 1:00:00 AM -08:00.
'    Converted 3/11/2007 4:00:00 AM -06:00 to 3/11/2007 3:00:00 AM -07:00.
'    Converted 6/15/2007 8:00:00 AM +00:00 to 6/15/2007 1:00:00 AM -07:00.
'    Converted 11/30/2007 2:00:00 PM +03:00 to 11/30/2007 3:00:00 AM -08:00.                                                           

설명

현지 시간으로 변환 하는 동안 메서드는 먼저 현재 DateTimeOffset 개체의 날짜와 시간에서 오프셋을 빼서 UTC (협정 세계시)로 변환 합니다.In performing the conversion to local time, the method first converts the current DateTimeOffset object's date and time to Coordinated Universal Time (UTC) by subtracting the offset from the time. 그런 다음 변환 UTC 날짜 및 시간을 현지 시간을 현지 시간 표준 시간대 오프셋을 추가 하 여 합니다.It then converts the UTC date and time to local time by adding the local time zone offset. 이 과정에서 현지 표준 시간대에 대 한 모든 조정 규칙의 계정을 걸립니다.In doing this, it takes account of any adjustment rules for the local time zone.

현재 DateTimeOffset 개체의 값과 메서드 호출에서 반환 되는 DateTimeOffset 개체의 값이 모두 동일한 시점을 나타냅니다.Both the value of the current DateTimeOffset object and the value of the DateTimeOffset object returned by the method call represent the same point in time. 즉, 둘 다 DateTimeOffset.Equals(DateTimeOffset, DateTimeOffset) 메서드에 전달 되는 경우 메서드는 true를 반환 합니다.That is, if both are passed to the DateTimeOffset.Equals(DateTimeOffset, DateTimeOffset) method, the method will return true.

변환으로 인해 DateTimeOffset 형식 범위를 벗어난 시간이 발생 하는 경우 ToLocalTime 메서드는 날짜 및 시간이 MaxValue 또는 MinValue로 설정 되 고 오프셋이 현지 표준 시간대 오프셋으로 설정 된 DateTimeOffset 개체를 반환 합니다.If the conversion causes a time that is out of range of the DateTimeOffset type, the ToLocalTime method returns a DateTimeOffset object that has the date and time set to either MaxValue or MinValue and the offset set to the local time zone offset.

적용 대상

추가 정보