2011-03-05 5 views
4

또는 적어도 의 시간을 컴퓨터에서의 UTC 시간 값으로 설정하면 현재 시간을 늘리거나 줄일 수 있고 원하는 것을 얻을 수 있습니까?.NET에서 프로그래밍 방식으로 다른 위치에서 시간을 얻는 방법은 무엇입니까?

내 특정 문제는 다음과 같습니다

내가 특정 위치에있어, 나는 에 영국 무엇인지 시간을 알고 싶어요.

+1

아마도 [다른 시간대에서 날짜 시간을 가져] 다른 게시물 (확인 http://stackoverflow.com/questions/246498/creating-a-datetime-in- a-specific-time-zone-in-c-fx-3-5) –

+0

@ 브래드 나는 그것을 보도록하겠습니다 ... –

답변

10

드디어 답을 찾았습니다. This articleTimeZoneInfoTimeZone을 잘 설명하며 시간대가 다른 시간대로 변환하는 몇 가지 예가 있습니다.

당신이 알아야 할 것은 시간대ID입니다.

예 (사이트에서 가져온) : 모든 ID의 목록을 얻으려면

DateTimeOffset nowDateTime = DateTimeOffset.Now; 
DateTimeOffset newDateTime = TimeZoneInfo.ConvertTime(
    nowDateTime, 
    TimeZoneInfo.FindSystemTimeZoneById("Hawaiian Standard Time")); 

Console.WriteLine("Now: {0}", nowDateTime); 
Console.WriteLine("Now in Hawaii: {0}", newDateTime); 

인쇄

Now: 3/5/2011 6:30:48 PM -08:00
Now in Hawaii: 3/5/2011 4:30:48 PM -10:00

을 수행 할 수 있습니다

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones
  • 쿼리에
  • 확인 TimeZoneInfo.GetSystemTimeZones();
+0

유효한 목록이 여기에있는 것으로 보입니다 : http://stackoverflow.com/questions/ 14149346/what-value-should-i-pass-into-timezoneinfo-findsystemtimezoneby # 24460750 영국의 표준 시간대 인 GMT 표준 시간 (http://stackoverflow.com/questions/4034923/how-to-represent) -the-current-uk-time # 4035002). – SharpC

관련 문제