DateAndTime.DateSerial(Int32, Int32, Int32) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает значение, Date
представляющее указанный год, месяц и день, а сведения о времени — полночь (00:00:00).
public:
static DateTime DateSerial(int Year, int Month, int Day);
public static DateTime DateSerial (int Year, int Month, int Day);
static member DateSerial : int * int * int -> DateTime
Public Function DateSerial (Year As Integer, Month As Integer, Day As Integer) As DateTime
Параметры
- Year
- Int32
Обязательный. Целочисленное выражение со значениями от 1 до 9999. Однако значения, которые меньше этого диапазона, также являются допустимыми. Если Year
имеет значение от 0 до 99, он интерпретируется как период между 1930 и 2029 годами, как описано в разделе "Примечания". Если значение параметра Year
меньше 1, оно вычитается из текущего года.
- Month
- Int32
Обязательный. Целочисленное выражение со значениями от 1 до 12. Однако значения, находящиеся за пределами этого диапазона, также являются допустимыми. Значение параметра Month
смещается на 1 и применяется к январю вычисляемого года. Другими словами, к январю добавляется значение (Month
- 1). При необходимости год вычисляется заново. Следующие результаты поясняют этот эффект.
Если значение Month
равно 1, то результатом вычислений будет январь расчетного года.
Если значение Month
равно 0, то результатом вычислений будет декабрь предыдущего года.
Если значение Month
равно -1, то результатом вычислений будет ноябрь предыдущего года.
Если значение Month
равно 13, то результатом является январь следующего года.
- Day
- Int32
Обязательный. Целочисленное выражение со значениями от 1 до 31. Однако значения, находящиеся за пределами этого диапазона, также являются допустимыми. Значение аргумента Day
смещается на 1 и применяется к первому дню расчетного месяца. Другими словами, к первому дню месяца добавляется значение (Day
- 1). При необходимости месяц и год вычисляются заново. Следующие результаты поясняют этот эффект.
Если значение Day
равно 1, то результатом вычислений будет первый день расчетного месяца.
Если значение Day
равно 0, то результатом вычислений будет последний день предыдущего месяца.
Если значение Day
равно -1, то результатом вычислений будет предпоследний день предыдущего месяца.
Если значение аргумента Day
превышает число дней текущего месяца, результатом вычислений будет соответствующий день следующего месяца. Например, если значение параметра Month
равно 4, а значение Day
равно 31, результатом вычислений будет 1 мая.
Возвращаемое значение
Значение типа , представляющее указанный год, месяц и день с данными о времени, равными полуночи (00:00:00).
Примеры
В этом примере функция возвращает DateSerial
дату для указанного года, месяца и дня.
' DateSerial returns the date for a specified year, month, and day.
Dim aDate As Date
' Variable aDate contains the date for February 12, 1969.
aDate = DateSerial(1969, 2, 12)
Console.WriteLine(aDate)
' The following example uses DateSerial to determine and display
' the last day of the previous month.
' First, establish a starting date.
Dim startDate = #1/23/1994#
' The 0 for the day represents the last day of the previous month.
Dim endOfLastMonth = DateSerial(startDate.Year, startDate.Month, 0)
Console.WriteLine("Last day in the previous month: " & endOfLastMonth)
' The following example finds and displays the day of the week that the
' 15th day of the following month will fall on.
Dim fifteenthsDay = DateSerial(Today.Year, Today.Month + 1, 15)
Console.WriteLine("The 15th of next month is a {0}", fifteenthsDay.DayOfWeek)
Комментарии
Двузначные значения аргумента Year
интерпретируются на основе параметров определяемого пользователем компьютера. По умолчанию значения от 0 до 29 интерпретируются как годы 2000–2029, а значения от 30 до 99 интерпретируются как годы 1930–1999 годов. Чтобы обозначить все остальные годы, используйте четырехзначный год, например 1924.
В следующем примере показаны отрицательные, нулевые и положительные значения аргументов. Здесь функция возвращает значение Date
, представляющее день перед первым днем марта в году за DateSerial
10 лет до текущего года, иными словами, последний день февраля десятилетней давности.
Dim EndFeb As Date = DateSerial(-10, 3, 0)
Если значение Month
или Day
превышает обычный диапазон, оно применяется к следующей единице, более крупной, если это необходимо. Например, если указать 32 дня, они оцениваются как один месяц и от одного до четырех дней в зависимости от значения Month
. Если Year
значение больше 9999 или какой-либо аргумент находится за пределами диапазона от -2 147 483 648 до 2 147 483 647, ArgumentException возникает ошибка. Если дата, указанная тремя аргументами, раньше 00:00:00 1 января 1 года или позже 23:59:59 31 декабря 9999 года, ArgumentOutOfRangeException возникает ошибка.
Тип Date
данных включает компоненты времени. DateSerial
устанавливает для всех этих значений значение 0, поэтому возвращаемое значение представляет начало вычисляемого дня.
Так как каждое Date
значение поддерживается структурой DateTime , ее методы предоставляют дополнительные возможности при сборке Date
значения. Например, можно использовать один из перегруженных DateTime конструкторов для заполнения переменной Date
с помощью требуемой комбинации компонентов. В следующем примере устанавливается NewDateTime
значение 6 мая 1978 г. за одну десятую секунду до 8:30 утра:
Dim NewDateTime As Date = New Date(1978, 5, 6, 8, 29, 59, 900)