2010-12-11 3 views
0

Я хочу получить доступ к текущей дате/времени. Я сделал несколько запросов, которые дают мне системную дату/время. когда я изменил системную дату, тогда она изменит дату/время. но я хочу текущую дату/время после изменения даты/времени.Как получить информацию по всему миру текущую дату и время

Примечание: Я не подключен к Интернету, и я хочу сделать это в Windows C# .net

+5

Как компьютер может знать, что означает * правильная дата/время после того, как вы его изменили, * без * подключения к Интернету или другой машине в сети, которая * имеет * правильное время? –

+0

Вы можете имитировать это с помощью перегрузки 'DateTime.Now.Add', поэтому, если вы находитесь в X-городе, расположенном в GMT и хотите время для Y-города в GTM + 2, просто добавьте 2 часа в DateTime.Now :) – Machinarius

ответ

3

Вы не можете это сделать. Вы всегда получаете системную дату и время. Вам нужно будет подключиться к Интернету или другому серверу, который может дать вам точное время.

1

Возможно, вы имеете в виду UTC? (Universal Time)

DateTime dt = DateTime.Now; 
dt.toString() -> 2010-12-25T10:00:00 
dt = dt.toUniversalTime(); 
dt.toString() -> 2010-12-25T08:00:00 (if you've got +2h in your locale time. 

Кроме того, объект DateTime содержит член "Type", который получит локали значение, Неизвестный, МСВ.

+1

Это все равно вернет неправильное время, если пользователь обновит системную дату или время. – ChrisF

+0

Это зависит, если обновление даты/времени означает только изменение часового пояса :) – ykatchou

Смежные вопросы