Visual studio текущая дата

Структура DateTime

Для работы с датами и временем в .NET предназначена структура DateTime. Она представляет дату и время от 00:00:00 1 января 0001 года до 23:59:59 31 декабря 9999 года.

Для создания нового объекта DateTime также можно использовать конструктор. Пустой конструктор создает начальную дату:

То есть мы получим минимально возможное значение, которое также можно получить следующим образом:

Чтобы задать конкретную дату, нужно использовать один из конструкторов, принимающих параметры:

Если необходимо получить текущую время и дату, то можно использовать ряд свойств DateTime:

Свойство DateTime.Now берет текущую дату и время компьютера, DateTime.UtcNow — дата и время относительно времени по Гринвичу (GMT) и DateTime.Today — только текущая дата.

При работе с датами надо учитывать, что по умолчанию для представления дат применяется григорианский календарь. Но что будет, если мы захотим получить день недели для 5 октября 1582 года:

Консоль выстветит значение Tuesday, то есть вторник. Однако, как может быть известно из истории, впервые переход с юлианского календаря на григорианский состоялся в октябре 1582 года. Тогда после даты 4 октября (четверг) (еще по юлианскому календарю) сразу перешли к 15 октября (пятница)(уже по григорианскому календарю). Таким образом, фактически выкинули 10 дней. То есть после 4 октября шло 15 октября.

В большинстве случаев данный факт вряд ли как-то повлияет на вычисления, однако при работе с очень давними датами данный аспект следует учитывать.

Операции с DateTime

Основные операции со структурой DateTime связаны со сложением или вычитанием дат. Например, надо к некоторой дате прибавить или, наоборот, отнять несколько дней.

Для добавления дат используется ряд методов:

Читайте также:  Gigabyte pci e gv n1050oc 2gl

Add(DateTime date) : добавляет дату date

AddDays(double value) : добавляет к текущей дате несколько дней

AddHours(double value) : добавляет к текущей дате несколько часов

AddMinutes(double value) : добавляет к текущей дате несколько минут

AddMonths(int value) : добавляет к текущей дате несколько месяцев

AddYears(int value) : добавляет к текущей дате несколько лет

Например, добавим к некоторой дате 3 часа:

Для вычитания дат используется метод Substract(DateTime date) :

Здесь даты различаются на три часа, поэтому результатом будет дата "03:00:00".

Метод Substract не имеет возможностей для отдельного вычитания дней, часов и так далее. Но это и не надо, так как мы можем передавать в метод AddDays() и другие методы добавления отрицательные значения:

Кроме операций сложения и вычитания еще есть ряд методов форматирования дат:

Метод ToLocalTime() преобразует время UTC в локальное время, добавляя смещение относительно времени по Гринвичу. Метод ToUniversalTime() , наоборот, преобразует локальное время во время UTC, то есть вычитает смещение относительно времени по Гринвичу. Остальные методы преобразуют дату к определенному формату.

Определение

Возвращает текущую дату. Gets the current date.

Значение свойства

Объект, которому присвоена сегодняшняя дата, с компонентом времени, равным 00:00:00. An object that is set to today’s date, with the time component set to 00:00:00.

Примеры

В следующем примере свойство Date используется для получения текущей даты. The following example uses the Date property to retrieve the current date. Также показано, как можно отформатировать DateTime значение с помощью некоторых строк стандартного формата даты и времени. It also illustrates how a DateTime value can be formatted using some of the standard date and time format strings. Обратите внимание, что результат, полученный третьим вызовом метода ToString(String), использует описатель формата g для включения компонента времени, который равен нулю. Note that the output produced by the third call to the ToString(String) method uses the g format specifier to include the time component, which is zero.

Читайте также:  Windows xp sp2 home russian 672

Комментарии

Начиная с версии .NET Framework 2,0, возвращаемое значение является DateTime, свойство Kind которого возвращает Local. Starting with the .NET Framework version 2.0, the return value is a DateTime whose Kind property returns Local.

Поскольку она возвращает текущую дату без текущего времени, свойство Today подходит для использования в приложениях, работающих только с датами. Because it returns the current date without the current time, the Today property is suitable for use in applications that work with dates only. Дополнительные сведения см. в разделе Выбор между DateTime, DateTimeOffset, TimeSpan и TimeZoneInfo. For details, see Choosing Between DateTime, DateTimeOffset, TimeSpan, and TimeZoneInfo. Напротив, свойство TimeOfDay возвращает текущее время без текущей даты, а свойство Now возвращает как текущую, так и текущее время. In contrast, the TimeOfDay property returns the current time without the current date, and the Now property returns both the current date and the current time.

Получение текущей даты

Если в программе, написанной на языке c#, вам нужно получить текущую дату, то для решения данной задачи вы можете воспользоваться следующими способами:

Библиотека классов, входящая в состав .Net Framework, содержит класс DateTime, который содержит большое количество различных свойств и методов для работы с датами и временем. Так, например данный класс содержит свойство Now, с помощью которого можно быстро получить текущую дату и время, например:

Если вам нужно получить только текущую дату, то тогда вы можете воспользоваться методом ToShortDateString, например:

Данный код можно не много сократить:

Либо можно сразу же вывести полученный результат на консоль:

Если же вам нужно получить дату не в короткой форме, как во втором способе, а в расширенной, то тогда воспользуйтесь методом ToLongDateString, например:

Rate this post

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *