DateTime постоянно обновляется в C #? - PullRequest
1 голос
/ 17 мая 2011

Я пытаюсь создать папку на основе текущего месяца / дня, используя DateTime.После того, как я инициализирую новый DateTime (2011, 5, 16, 1, 1, 30);будет ли оно обновляться или сбрасываться при каждом запуске программы?

Ответы [ 7 ]

8 голосов
/ 17 мая 2011

A DateTime (2011, 5, 16, 1, 1, 30); это объект, который инициализируется с датой, которую вы предоставляете в качестве конструктора. Дата всегда останется прежней. Если вы хотите получить текущую дату, вам нужно использовать DateTime.Now.

2 голосов
/ 17 мая 2011

Попробуйте DateTime.Now - он всегда будет получать текущее время.

1 голос
/ 17 мая 2011

A DateTime объект является неизменным и после его создания никогда не изменится.DateTime.Now создает новый DateTime на основе текущего времени и будет верным на момент создания, но возвращенный экземпляр не будет обновлен.Вы всегда можете позвонить DateTime.Now снова, чтобы узнать последнее время, но не держите ссылку рядом и ожидайте, что она обновится.

        DateTime dt = DateTime.Now;
        Thread.Sleep(1000);
        DateTime dt2 = DateTime.Now;
        TimeSpan elapsed = dt2 - dt;
        Console.WriteLine(elapsed.TotalMilliseconds); 
        // Printed 1000.4 when I last ran it, depends on CPU timings

Как видите, dt и dt2 различныпоскольку dt не обновлялся, это было только время выполнения этой строки кода.

1 голос
/ 17 мая 2011

Когда вы задаете конкретные параметры в вашем DateTime экземпляре, вы получите ту же дату / время.

Если вы хотите использовать текущее время и обновлять его каждый раз при запуске программы,используйте DateTime.Now.

1 голос
/ 17 мая 2011

Почему бы вам просто не использовать DateTime.Now

0 голосов
/ 17 мая 2011

Нет, DateTime - это не объект Часов, а просто объект, представляющий момент времени.Используйте DateTime.Now, если вам всегда нужно узнать текущий момент времени.

0 голосов
/ 17 мая 2011

Если код выглядит так, он будет одинаковым каждый раз. Если вы хотите текущий день, используйте DateTime.Today или DateTime.Now

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...