Дни недели
Delphi , Синтаксис , Дата и Время
Дни недели
Тем не менее, начиная со второй версии, Delphi содержат в своем арсенале замечательную функцию DayOfWeek, возвращающую целочисленный результат в диапазоне от 1 до 7. Вот пример кода, присланный Андреем Ивановым:
Статья Дни недели раздела Синтаксис Дата и Время может быть полезна для разработчиков на Delphi и FreePascal.
Комментарии и вопросы
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
Day OfWeek Перечисление
Определение
Определяет день недели. Specifies the day of the week.
Обозначает пятницу. Indicates Friday.
Обозначает понедельник. Indicates Monday.
Обозначает субботу. Indicates Saturday.
Обозначает воскресенье. Indicates Sunday.
Обозначает четверг. Indicates Thursday.
Обозначает вторник. Indicates Tuesday.
Обозначает среду. Indicates Wednesday.
Примеры
В следующем примере демонстрируется DateTime.DayOfWeek свойство DayOfWeek и перечисление. The following example demonstrates the DateTime.DayOfWeek property and the DayOfWeek enumeration.
Комментарии
DayOfWeek Перечисление представляет день недели в календарях, которые имеют семь дней в неделю. The DayOfWeek enumeration represents the day of the week in calendars that have seven days per week. Значения констант в этом перечислении находятся в диапазоне от воскресенья до субботу. The value of the constants in this enumeration ranges from Sunday to Saturday. Если приведение к целому числу, его значение лежит в диапазоне от нуля (что означает воскресенье) до 6 (это означает субботу). If cast to an integer, its value ranges from zero (which indicates Sunday) to six (which indicates Saturday).
Типы, функции и процедуры Delphi для работы с датой и временем.
Содержание:
Функции и процедуры Delphi для работы с датой и временем.
Тип TDateTime.
Тип TTimeStamp.
Тип TSQLTimeStamp.
Функции и процедуры Delphi для работы с датой и временем.
Наименование | Вид модуль | Описание |
---|---|---|
CheckSqlTimeStamp | процедура SqlTimSt | Проверяет соответствует ли значение TSQLTimeStamp правильной дате и времени. |
CompareDate | функция DateUtils | Сравнивает два значения TDateTime между собой по значению даты. |
CompareDateTime | функция DateUtils | Сравнивает два значения TDateTime между собой. |
CompareTime | функция DateUtils | Сравнивает два значения TDateTime между собой по значению времени. |
CurrentYear | функция SysUtils | Возвращает текущий год. |
Date | функция SysUtils | Возвращает текущую дату. |
DateDelta | константа SysUtils | Определяет различие между значениями TDateTime и TTimeStamp. |
DateOf | функция DateUtils | «Вырезает» значение времени из TDateTime (устанавливает значение времени в 0, что означает полночь). |
DateTimeToFileDate | функция SysUtils | Конвертирует объект TDateTime в формат времени операционной системы. |
DateTimeToSQLTimeStamp | функция SqlTimSt | Конвертирует значение TDateTime в TSQLTimeStamp. |
DateTimeToStr | функция SysUtils | Конвертирует значение TDateTime в строку. |
DateTimeToString | процедура SysUtils | Конвертирует значение TDateTime в строку, используя указаный формат строки. |
DateTimeToSystemTime | процедура SysUtils | Конвертирует значение TDateTime в системное время Win32 API. |
DateTimeToTimeStamp | функция SysUtils | Конвертирует значение TDateTime в соответствующее значение TTimeStamp. |
DateToStr | функция SysUtils | Конвертирует значение даты из TDateTime в строку. |
Day of week | константы DateUtils |
|
DayOf | функция DateUtils | Возвращает день месяца из значения TDateTime. Возвращаемое функцией значение находится в промежутке между 1 и 31. |
DayOfTheMonth | функция DateUtils | Возвращает день месяца из значения TDateTime. Возвращаемое функцией значение находится в промежутке между 1 и 31. |
DayOfTheWeek | функция DateUtils |
|
DayOfTheYear | функция DateUtils | Возвращает количество дней между значением, указаным в TDateTime и 31 Декабря предыдущего года. |
DayOfWeek | функция SysUtils |
|
DaysBetween | функция DateUtils | Возвращает количество полных дней из промежутка времени, заданного двумя значениями TDateTime. |
DaysInAMonth | функция DateUtils | Возвращает количество дней в указаном месяце указаного года. |
DaysInAYear | функция DateUtils | Возвращает количество дней в указаном году. |
DaysInMonth | функция DateUtils | Возвращает количество дней в месяце, заданом в значении TDateTime. |
DaysInYear | функция DateUtils | Возвращает количество дней в году, заданом в значении TDateTime. |
DaySpan | функция DateUtils | Возвращает количество дней, включая дробную часть, из промежутка времени, заданного двумя значениями TDateTime. |
DecodeDate | процедура SysUtils | Возвращает значения Год, Месяц, День для значения TDateTime. |
DecodeDateDay | процедура DateUtils | Возвращает год и день года для значения, указаного в TDateTime. |
DecodeDateFully | функция SysUtils | Возвращает значения Год, Месяц, День, День_Недели для значения TDateTime. |
DecodeDateMonthWeek | процедура DateUtils | Возвращает значения Год, Месяц, Неделя_Месяца, День_Недели для значения TDateTime. |
DecodeDateTime | процедура DateUtils | Возвращает значения Год, Месяц, День, Час, Минута, Секунда, Милисекунда для значения TDateTime. |
DecodeDateWeek | процедура DateUtils | Возвращает значения Год, Неделя_Года, День_Недели для значения TDateTime. |
DecodeDayOfWeekInMonth | процедура DateUtils | Для заданного значения TDateTime возвращает Год, Месяц, День_Недели и Число_Дней_в_Этой_Неделе_для_Этого_Месяца. |
DecodeTime | процедура SysUtils | Разбивает значение TDateTime на часы, минуты, секунды и милисекунды. |
EncodeDate | функция SysUtils | Возвращает значение TDateTime, заданое как Год, Месяц, День. |
EncodeDateDay | функция DateUtils | Возвращает значение TDateTime, заданое как указаный день указаного года. |
EncodeDateMonthWeek | функция DateUtils | Возвращает значение TDateTime, заданое как указаный день указаной недели в указаном месяце и году. |
EncodeDateTime | функция DateUtils | Возвращает значение TDateTime, заданое как Год, Месяц, День, Час, Секунда, Милисекунда. |
EncodeDateWeek | функция DateUtils | Возвращает значение TDateTime, заданое как указаный день указаной недели в указаном году. |
EncodeDayOfWeekInMonth | функция DateUtils | Возвращает значение TDateTime, заданое как положение дня недели в указаном месяце и году. |
EncodeTime | функция SysUtils | Возвращает значение TDateTime, заданое как часы, минуты, секунды и милисекунды. |
EndOfADay | функция DateUtils | Возвращает значение TDateTime которое представляет последнюю милисекнду указаного дня. |
EndOfAMonth | функция DateUtils | Возвращает значение TDateTime которое представляет последнюю милисекнду последнего дня указаного месяца. |
EndOfAWeek | функция DateUtils | Возвращает значение TDateTime которое представляет последнюю милисекнду последнего дня указаной недели. |
EndOfAYear | функция DateUtils | Возвращает значение TDateTime которое представляет последнюю милисекнду последнего дня указаного года. |
EndOfTheDay | функция DateUtils | Возвращает значение TDateTime которое представляет последнюю милисекнду дня, указаного в TDateTime. |
EndOfTheMonth | функция DateUtils | Возвращает значение TDateTime которое представляет последнюю милисекнду последнего дня месяца, указаного в TDateTime. |
EndOfTheWeek | функция DateUtils | Возвращает значение TDateTime которое представляет последнюю милисекнду последнего дня недели, указаной в TDateTime. |
EndOfTheYear | функция DateUtils | Возвращает значение TDateTime которое представляет последнюю милисекнду последнего дня года, указаного в TDateTime. |
FormatDateTime | функция SysUtils | Возвращает значение TDateTime в виде форматной строки. Если форматная строка не задана, то принимается та, которая основана на текущей локализации системы. |
HourOf | функция DateUtils | Возвращает час дня, из значения TDateTime. |
HourOfTheDay | функция DateUtils | Возвращает час дня, из значения TDateTime. |
HourOfTheMonth | функция DateUtils | Возвращает количество часов между указаным в значении TDateTime и 12:00 AM первого дня месяца. |
HourOfTheWeek | функция DateUtils | Возвращает количество часов между указаным в значении TDateTime и 12:00 AM первого дня недели. |
HourOfTheYear | функция DateUtils | Возвращает количество часов между указаным в значении TDateTime и 12:00 AM первого дня года. |
HoursBetween | функция DateUtils | Возвращает количество полных часов между двумя значениями TDateTime. |
HourSpan | функция DateUtils | Возвращает количество часов, включая дробную часть, между двумя значениями TDateTime. |
IncAMonth | процедура SysUtils | Увеличивает дату на один месяц. |
IncDay | функция DateUtils | Возвращает дату, сдвинутую на указаное число дней. |
IncHour | функция DateUtils | Возвращает дату/время, сдвинутую на указаное число часов. |
IncMilliSecond | функция DateUtils | Возвращает дату/время, сдвинутую на указаное число милисекунд. |
IncMinute | функция DateUtils | Возвращает дату/время, сдвинутую на указаное число минут. |
IncMonth | функция SysUtils | Возвращает дату, сдвинутую на указаное число месяцев. |
IncSecond | функция DateUtils | Возвращает дату/время, сдвинутую на указаное число секунд. |
IncWeek | функция DateUtils | Возвращает дату, сдвинутую на указаное число недель. |
IncYear | функция DateUtils | Возвращает дату, сдвинутую на указаное количество лет. |
IsInLeapYear | функция DateUtils | Показывает, принадлежит ли значение, указаное в TDateTime, високосному году. |
IsLeapYear | функция SysUtils | Показывает, является ли указаный год високосным. |
IsPM | функция DateUtils | Показывает, принадлежит ли значение времени, указаное в TDateTime, второй половине дня . |
IsSameDay | функция DateUtils | Показывает, принадлежит ли значение, указаное в TDateTime, заданой дате. |
IsToday | функция DateUtils | Показывает, принадлежит ли значение, указаное в TDateTime, текущей дате. |
IsValidDate | функция DateUtils | Проверяет, являются ли указаные год, месяц и день допустимой датой. |
IsValidDateDay | функция DateUtils | Проверяет, являются ли указаные год и день года допустимой датой. |
IsValidDateMonthWeek | функция DateUtils | Проверяет, являются ли указаные год, месяц, неделя месяца и день недели допустимой датой. |
IsValidDateTime | функция DateUtils | Проверяет, являются ли указаные год, месяц, день, час, минута, секунда и милисекунда допустимыми значениями даты и времени. |
IsValidDateWeek | функция DateUtils | Проверяет, являются ли указаные год, неделя года и день недели допустимой датой. |
IsValidTime | функция DateUtils | Проверяет, являются ли указаные час, минута, секунда и милисекунда допустимыми значениями даты и времени. |
MilliSecondOf | функция DateUtils | Возвращает милисекунды из значения TDateTime. |
MilliSecondOfTheDay | функция DateUtils | Возвращает количество милисекунд, прошедшее между значением указаным в TDateTime и началом этого самого дня. |
MilliSecondOfTheHour | функция DateUtils | Возвращает количество милисекунд, прошедшее между значением указаным в TDateTime и началом этого самого часа. |
MilliSecondOfTheMinute | функция DateUtils | Возвращает количество милисекунд, прошедшее между значением указаным в TDateTime и началом этой самой минуты. |
MilliSecondOfTheMonth | функция DateUtils | Возвращает количество милисекунд, прошедшее между значением указаным в TDateTime и началом месяца. |
MilliSecondOfTheSecond | функция DateUtils | Возвращает милисекунды из значения TDateTime. |
MilliSecondOfTheWeek | функция DateUtils | Возвращает количество милисекунд, прошедшее между значением указаным в TDateTime и 12:00:00:00 AM первого дня недели. |
MilliSecondOfTheYear | функция DateUtils | Возвращает количество милисекунд, прошедшее между значением указаным в TDateTime и 12:00:00:00 AM первого дня года. |
MilliSecondsBetween | функция DateUtils | Возвращает количество милисекунд между двумя значениями TDateTime. |
MilliSecondSpan | функция DateUtils | Возвращает количество милисекунд между двумя значениями TDateTime. Но в качестве результата вместо целого типа испльзуется число с плавающей точкой. |
MinuteOf | функция DateUtils | Возвращает минуты из значения TDateTime. |
MinuteOfTheDay | функция DateUtils | Возвращает количество минут между значением указаным в TDateTime и 12:00 AM того же дня. |
MinuteOfTheHour | функция DateUtils | Возвращает количество минут, прошедшее между значением указаным в TDateTime и началом этого самого часа. |
MinuteOfTheMonth | функция DateUtils | Возвращает количество минут, прошедшее между значением указаным в TDateTime и 12:00 AM первого дня месяца. |
MinuteOfTheWeek | функция DateUtils | Возвращает количество минут, прошедшее между значением указаным в TDateTime и 12:00 AM первого дня недели. |
MinuteOfTheYear | функция DateUtils | Возвращает количество минут, прошедшее между значением указаным в TDateTime и 12:00 AM первого дня года. |
MinutesBetween | функция DateUtils | Возвращает количество полных минут между двумя значениями TDateTime. |
MinuteSpan | функция DateUtils | Возвращает количество минут, включая дробную часть, между двумя значениями TDateTime. |
MonthOf | функция DateUtils | Возвращает месяц года из значения TDateTime. |
MonthOfTheYear | функция DateUtils | Возвращает месяц года из значения TDateTime. |
MonthsBetween | функция DateUtils | Возвращает количество полных месяцев между двумя значениями TDateTime. |
MonthSpan | функция DateUtils | Возвращает количество месяцев, включая дробную часть, между двумя значениями TDateTime. |
MSecsToTimeStamp | функция SysUtils | Конвертирует указаное количество милисекунд в значение TTimeStamp. |
Now | функция SysUtils | Возвращает текущие дату и время. |
NthDayOfWeek | функция DateUtils | Возвращает сколько дней, с таким же порядковым номером дня недели, было в текущем месяце, представленом значением TDateTime. |
NullSQLTimeStamp | константа SqlTimSt | Значение NULL для TSQLTimeStamp. |
OneHour Constant; OneMillisecond Constant; OneMinute Constant; OneSecond Constant | константы DateUtils | Обратные константы времени в модуле Delphi. |
RecodeDate | функция DateUtils | Меняет в TDateTime значение даты на новые значения Год, Месяц, День. В случае неудачи вызывает исключение EConvertError. |
RecodeDateTime | функция DateUtils | Выборочно изменяет в TDateTime значения Год, Месяц, День, Час, Секунда, Милисекунда на заданые. В случае неудачи вызывает исключение EConvertError. |
RecodeDay | функция DateUtils | Меняет значение День месяца в TDateTime на заданое. В случае неудачи вызывает исключение EConvertError. |
RecodeHour | функция DateUtils | Меняет значение Час дня в TDateTime на заданое. В случае неудачи вызывает исключение EConvertError. |
RecodeMilliSecond | функция DateUtils | Меняет значение Милисекунда в TDateTime на заданое. В случае неудачи вызывает исключение EConvertError. |
RecodeMinute | функция DateUtils | Меняет значение Минута часа в TDateTime на заданое. В случае неудачи вызывает исключение EConvertError. |
RecodeMonth | функция DateUtils | Меняет значение Месяц года в TDateTime на заданое. В случае неудачи вызывает исключение EConvertError. |
RecodeSecond | функция DateUtils | Меняет значение Секунда часа в TDateTime на заданое. В случае неудачи вызывает исключение EConvertError. |
RecodeTime | функция DateUtils | Меняет в TDateTime значение времени на новые значения Час, Минута, Секунда, Милисекунда. В случае неудачи вызывает исключение EConvertError. |
RecodeYear | функция DateUtils | Меняет значение Год в TDateTime на заданое. В случае неудачи вызывает исключение EConvertError. |
ReplaceDate | процедура SysUtils | Заменяет значение даты в TDateTime на заданое. |
ReplaceTime | процедура SysUtils | Заменяет значение времени в TDateTime на заданое. |
SameDate | функция DateUtils | Показывает, представляют ли два значения TDateTime тот же самый год, месяц и день. |
SameDateTime | функция DateUtils | Показывает, представляют ли два значения TDateTime те же самые год, месяц, день, час, секунда, милисекунда. |
SameTime | функция DateUtils | Показывает, совпадают ли значения времени в двух значениях TDateTime. |
SecondOf | функция DateUtils | Возвращает количество секунд минуты из значения TDateTime. |
SecondOfTheDay | функция DateUtils | Возвращает количество секунд между значением указаным в TDateTime и 12:00:00 AM того же самого дня. |
SecondOfTheHour | функция DateUtils | Возвращает количество секунд между значением указаным в TDateTime и началом того же самого часа. |
SecondOfTheMinute | функция DateUtils | Возвращает количество секунд между значением указаным в TDateTime и началом той же самой минуты. |
SecondOfTheMonth | функция DateUtils | Возвращает количество секунд между значением указаным в TDateTime и 12:00:00 AM первого дня месяца. |
SecondOfTheWeek | функция DateUtils | Возвращает количество секунд между значением указаным в TDateTime и 12:00:00 AM первого дня недели. |
SecondOfTheYear | функция DateUtils | Возвращает количество секунд между значением указаным в TDateTime и 12:00:00 AM первого дня года. |
SecondsBetween | функция DateUtils | Возвращает количество секунд между двумя значениями TDateTime. |
SecondSpan | функция DateUtils | Возвращает количество секунд, включая дробную часть, между двумя значениями TDateTime. |
SQLDayOfWeek | функция SqlTimSt | Возвращает день недели из значения TSQLTimeStamp. Возвращаемое функцией значение находится в промежутке между 1 и 7, где Воскресение (Sunday) является первым днем недели, а Суббота (Saturday) — седьмым. |
SQLTimeStampToDateTime | функция SqlTimSt | Конвертирует значение TSQLTimeStamp в TDateTime. |
SQLTimeStampToStr | функция SqlTimSt | Конвертирует значение TSQLTimeStamp в строку. |
StartOfADay | функция DateUtils | Возвращает значение TDateTime которое представляет 12:00:00:00 AM указаного дня. |
StartOfAMonth | функция DateUtils | Возвращает значение TDateTime которое представляет 12:00:00:00 AM первого дня указаного месяца. |
StartOfAWeek | функция DateUtils | Возвращает значение TDateTime которое представляет первый момент указаного дня указаной недели. |
StartOfAYear | функция DateUtils | Возвращает значение TDateTime которое представляет первый момент первого дня указаного года. |
StartOfTheDay | функция DateUtils | Возвращает значение TDateTime которое представляет 12:00:00:00 AM дня, заданого значением TDateTime. |
StartOfTheMonth | функция DateUtils | Возвращает значение TDateTime которое представляет 12:00:00:00 AM первого дня месяца, заданого значением TDateTime. |
StartOfTheWeek | функция DateUtils | Возвращает значение TDateTime которое представляет 12:00:00:00 AM первого дня недели, заданой значением TDateTime. |
StartOfTheYear | функция DateUtils | Возвращает значение TDateTime которое представляет 12:00:00:00 AM первого дня года, заданого значением TDateTime. |
StrToDate | функция SysUtils | Конвертирует строку с датой в TDateTime. В случае неудачи вызывает исключение EConvertError. |
StrToDateDef | функция SysUtils | Конвертирует строку с датой в TDateTime со значением по умолчанию в случае ошибки. |
StrToDateTime | функция SysUtils | Конвертирует строку в значение TDateTime. В случае неудачи вызывает исключение EConvertError. |
StrToDateTimeDef | функция SysUtils | Конвертирует строку в значение TDateTime со значением по умолчанию в случае ошибки. |
StrToSQLTimeStamp | функция SqlTimSt | Конвертирует строку в значение TSQLTimeStamp. В случае неудачи вызывает исключение EConvertError. |
StrToTime | функция SysUtils | Конвертирует строку со временем в значение TDateTime. В случае неудачи вызывает исключение EConvertError. |
StrToTimeDef | функция SysUtils | Конвертирует строку со временем в значение TDateTime со значением по умолчанию в случае ошибки. |
SystemTimeToDateTime | функция SysUtils | Конвертирует значение системного времени в значение TDateTime. |
Time | модульные константы SysUtils | Значения констант для вычисления времени. |
Time, GetTime | функции SysUtils | Возвращают текущее время. |
TimeOf | функция DateUtils | Убирает значение даты из значения TDateTime. |
TimeStampToDateTime | функция SysUtils | Конвертирует значение TTimeStamp в соответствующее значение TDateTime. |
TimeStampToMSecs | функция SysUtils | Конвертирует значение TTimeStamp в TTimeStamp в абсолютное число милисекунд. |
TimeToStr | функция SysUtils | Конвертирует значение времени из TDateTime в строку. |
Today | функция DateUtils | Возвращает значение TDateTime, представляющее текущую дату. |
Tomorrow | функция DateUtils | Возвращает значение TDateTime, представляющее следующий день. |
TryEncodeDate | функция SysUtils | Создает значение TDateTime, предсталяющее указаный Год, Месяц, День. В случае неудачи возвращает False. |
TryEncodeDateDay | функция DateUtils | Вычисляет значение TDateTime которое представляет указаный день для указаного года. В случае неудачи возвращает False. |
TryEncodeDateMonthWeek | функция DateUtils | Вычисляет значение TDateTime которое представляет указаный день указаной недели в указаном месяце и году. В случае неудачи возвращает False. |
TryEncodeDateTime | функция DateUtils | Вычисляет значение TDateTime которое представляет указаные год, месяц, день, час, минуту, секунду и милисекунду. В случае неудачи возвращает False. |
TryEncodeDateWeek | функция DateUtils | Вычисляет значение TDateTime которое представляет указаный день указаной недели в указаном году. В случае неудачи возвращает False. |
TryEncodeDayOfWeekInMonth | функция DateUtils | Вычисляет значение TDateTime которое представляет указаный день недели в указаном месяце и году. В случае неудачи возвращает False. |
TryEncodeTime | функция SysUtils | Создает значение TDateTime для заданых значений Час, Минута, Секунда и Милисекунда. В случае неудачи возвращает False. |
TryRecodeDateTime | функция DateUtils | Выборочно меняет значения Год, Месяц, День, Час, Секунда, Милисекунда в указаном TDateTime. В случае неудачи возвращает False. |
TryStrToDate | функция SysUtils | Конвертирует строку с датой в TDateTime. В случае неудачи возвращает False. |
TryStrToDateTime | функция SysUtils | Конвертирует строку в значение TDateTime. В случае неудачи возвращает False. |
TryStrToSQLTimeStamp | функция SqlTimSt | Конвертирует строку в значение TSQLTimeStamp. В случае неудачи возвращает False. |
TryStrToTime | функция SysUtils | Конвертирует строку со временем в значение TDateTime. В случае неудачи возвращает False. |
UnixDateDelta | константа SysUtils | Определяет разницу между значениями TDateTime и TIME_T. Тип TIME_T используется в системах Unix и Lnux, а так же в стандартных библиотеках C. |
WeekOf | функция DateUtils | Возвращает неделю года из значения TDateTime. |
WeekOfTheMonth | функция DateUtils | Возвращает неделю месяца из значения TDateTime. |
WeekOfTheYear | функция DateUtils | Возвращает неделю года из значения TDateTime. |
WeeksBetween | функция DateUtils | Возвращает количество полных недель между двумя значениями TDateTime. |
WeeksInAYear | функция DateUtils | Возвращает количество недель в указаном году. |
WeeksInYear | функция DateUtils | Возвращает количество недель в году из значения TDateTime. |
WeekSpan | функция DateUtils | Возвращает количество недель, включая дробную часть, между двумя значениями TDateTime. |
WithinPastDays | функция DateUtils | Показывает, находятся ли две даты в заданом промежутке дней относительно друг друга. |
WithinPastHours | функция DateUtils | Показывает, находятся ли два значения даты/времени в заданом промежутке часов относительно друг друга. |
WithinPastMilliSeconds | функция DateUtils | Показывает, находятся ли два значения даты/времени в заданом промежутке милисекунд относительно друг друга. |
WithinPastMinutes | функция DateUtils | Показывает, находятся ли два значения даты/времени в заданом промежутке минут относительно друг друга. |
WithinPastMonths | функция DateUtils | Показывает, находятся ли два значения даты/времени в заданом промежутке месяцев относительно друг друга. |
WithinPastSeconds | функция DateUtils | Показывает, находятся ли два значения даты/времени в заданом промежутке секунд относительно друг друга. |
WithinPastWeeks | функция DateUtils | Показывает, находятся ли два значения даты/времени в заданом промежутке недель относительно друг друга. |
WithinPastYears | функция DateUtils | Показывает, находятся ли два значения даты/времени в заданом промежутке лет относительно друг друга. |
YearOf | функция DateUtils | Возвращает Год из значения TDateTime. |
YearsBetween | функция DateUtils | Возвращает приблизительное количество лет между двумя значениями TDateTime. |
YearSpan | функция DateUtils | Возвращает приблизительное количество лет, включая дробную часть, между двумя значениями TDateTime. |
Yesterday | функция DateUtils | Возвращает значение TDateTime которое соответствует предыдущему дню. |
Содержание
Тип TDateTime.
Тип TDateTime — это основной тип в Delphi для работы с датой и временем. Он является числом с плавающей запятой, целая часть которого содержит число дней, отсчитанное от некоторого начала календаря, а дробная часть равна части 24-часового дня, т.е. характеризует время и не относится к дате. Для 32-разрядных версий Delphi за начало календаря принята дата 12/30/1899, 12 часов.
Ниже приведены несколько примеров значения TDateTime и соответсвующие им дата и время:
12/30/1899 12:00 am | |
2.75 | 1/1/1900 6:00 pm |
-1.25 | 12/29/1899 6:00 am |
35065 | 1/1/1996 12:00 am |
Чтобы найти количество дней, включая дробную часть, между двумя датами, просто вычтите два значения, если только одно из них не является отрицательным. Аналогично, если значение TDateTime не отрицательное, то, чтобы увеличить значение даты и времени на определенное кличество дней, включая дробную часть, достаточно прибавить количество дней, включая дробную часть, к значению TDateTime.
Когда обрабатываются отрицательные значения TDateTimes, то вычисление дробной части производится отдельно. Дробная часть отражает часть 24-часового дня не зависимо от знака значения TDateTime. Например, 6:00 am on 12/29/1899 это –1.25, а неt –1 + 0.25, что составило бы –0.75. Значений TDateTime между –1 и 0 не существует. Cовет: В модулях SysUtils и DateUtils для работы с датой и временем имеется большое количество процедур и функций на все случаи жизни. Не заморачивайтесь с обственными вычислениями, не изобретайте велосипед, а пользуйтесь уже готовыми наработками разработчиков Delphi. (См. Функции и процедуры Delphi для работы с датой и временем.) Оно надежнее.
Примечание: В Delphi 1 за начало отсчета принят год 1, т.е. для перевода даты Delphi 1 в дату последующих версий Delphi надо вычесть из даты число 693594.
Содержание
Тип TTimeStamp.
TTimeStamp представляет значения дата и время.
Используйте TTimeStamp если требуется повышеная точность представления значения времени в знчениях дата/время. Если нет необходимости сохранять значение времени с точностью до милисекунд, используйте более компактное TDateTime. Если необходима еще большая точность, то используйте TSQLTimeStamp (но НЕ назначайте его типом Variant).
Поле Time field показывает количество милисекунд, прошедших с полуночи.
Поле Data показывает число календарных дней от начала календаря (число дней с 1/1/0001 плюс один).
Содержание
Тип TSQLTimeStamp.
TSQLTimeStamp представляет значения даты и времени с очень высокой точностью.
Драйвера баз данных dbExpress используют TSQLTimeStamp когда работают со значениями даты и времени.
- Year определяет год от 1 до 9999.
- Month определяет месяц от 1 до 12.
- Day определяет день месяца, от 1 до 28, 29, 30, или 31, в зависимости от значения Month.
- Hour определяет час от 0 до 23.
- Minute и Second могут колебаться от 0 до 59.
- Fractions определяет милисекунды от 0 до 999.
Используя функцию VarSQLTimeStampCreate, Вы можете создать тип Variant который представляет значение TSQLTimeStamp. Фактически, простейший путь манипулирования значениями SQLTimeStamp это создать подобный Variant и использовать встроеные операторы, обеспечивающие работу с Variant.
Процедуры и функции работы с датой и временем
Function Date: TDateTime;
Возвращает текущую дату.
Function DateTimeToStr(DateTime: TDateTime): String;
Преобразовывает параметр типа TDateTime, содержащий дату и время, в строку. Если параметр DateTime не содержит значения даты, дата устанавливается в 00/00/00. Если параметр DateTime не содержит значения времени, время устанавливается в 00:00:00.
Function DateToStr(Date: TDateTime): String;
Преобразовывает параметр типа TDateTime, содержащий дату, в строку.
Преобразование использует формат, определенный глобальной переменной ShortDateFormat.
Function DayOfWeek(Date: TDateTime): Integer;
Возвращает день недели определенной даты как целое число между 1 и 7. Воскресенье — первый день недели, и суббота — седьмой.
Procedure DecodeDate(Date: TDateTime; var Year, Month, Day: Word);
Извлекает дату из формата TDateTime и помещает год, месяц и день соответственно в переменные Year, Month и Day.
Procedure DecodeTime(Time: TDateTime; var Hour, Min, Sec, MSec: Word);
Извлекает время из формата TDateTime и помещает часы, минуты, секунды, и миллисекунды соответственно в переменные Hour, Min, Sec и MSec.
Function EncodeDate(Year, Moth, Day: Word): TDateTime;
Возвращает дату в формате TDateTime, полученную из значений параметров Year, Month и Day.
Year должен быть между 1 и 9999.
Допустимые значения Month — от 1 до 12.
Допустимые значения Day — от 1 до 28, 29, 30, или 31, в зависимости от значения Month. Например, возможные значения Day в течение второго месяца (февраля) — от 1 до 28, или от 1 до 29, в зависимости от того, определяет или нет значение Year високосный год.
Если значения находятся вне диапазона, возникает исключительная ситуация EConvertError. Возникающее в результате значение — единица плюс число дней между 30/12/1899 и данной датой.
Function EncodeTime(Hour, Min, Sec, MSec: Word): TDateTime;
Возвращает время в формате TDateTime, полученное из значений параметров Hour, Min, Sec и MSec.
Если значение типизированной константы Time24Hour ложно (False), значения Hour лежат в пределах от 0 до 12, если истинно (True) — от 0 до 23.
Допустимые значения Min и Sec — от 0 до 59. Допустимые значения MSec — от 0 до 999.
Если значения находятся вне диапазона, возникает исключительная ситуация EConvertError.
Function Now: TDateTime;
Возвращает текущую дату и время в формате TDateTime (дата + время).
Function StrToDate(const S: String): TDateTime;
Преобразовывает строковое представление даты в формат TDateTime. Дата в параметре S должна быть записана по правилам Windows, т.е. должна состоять из двух или трех чисел, отделяемых символом, опреде-ленным в глобальной переменной DateSeparator. Порядок следования месяца, дня и года определен в глобальной переменной ShortDateFormat. Возможные комбинации — m/d/y, d/m/y, и y/m/d.
Если строка содержит только два числа, это интерпретируется как дата (m/d или d/m) в текущем году. Значения Year между 0 и 99 означают год в текущем столетии.
Если строка содержит дату в неверном формате, возбуждается исключительная ситуация EConvertError.
Function StrToTime(Const S: String): TDateTime;
Преобразовывает строковое представление времени в формат TDateTime.
Строка должна состоять из двух или трех чисел, отделяемых символом, определенным в глобальной переменной TimeSeparator. Числа представляют собой часы, минуты, и (необязательно) секунды, в соответствующем порядке.
Если строка содержит время в неверном формате, возбуждается исключительная ситуация EConvertError.
Function Time: TDateTime;
Возвращает текущее время.
Function TimeToStr(Time: TDateTime): String;
Преобразовывает время из формата TDateTime в строковое представление.
Преобразование использует формат, определенный в глобальной переменной LongTimeFormat. Вы можете изменять формат отображения времени, изменяя значения переменных даты и времени (или используя Панель управления Windows).
DayOfWeek — Функция Delphi
function checkdate(date: string ): boolean;
function Date2julian(date: string ): longint;
function Julian2date(julian: longint): string ;
function DayOfTheWeek(date: string ): string ;
function idag: string ;
function idag(): string ;
другими функциями данного молуля.>
Year, Month, Day: Word;
DecodeDate(Now, Year, Month, Day);
result := IntToStr(year) + IntToStr(Month) + IntToStr(day);
function Date2julian(date: string ): longint;
Если у вас другой формат,
в первую очередь преобразуйте его.>
month, day, year: integer;
ta, tb, tc: longint;
month := strtoint(copy(date, 5 , 2 ));
day := strtoint(copy(date, 7 , 2 ));
year := strtoint(copy(date, 1 , 4 ));
if month > 2 then
month := month — 3
month := month + 9 ;
ta := 146097 * (year div 100 ) div 4 ;
tb := 1461 * (year mod 100 ) div 4 ;
tc := ( 153 * month + 2 ) div 5 + day + 1721119 ;
result := ta + tb + tc
function mdy2date(month, day, year: integer): string ;
y := ‘000’ + inttostr(year);
y := copy(y, length(y) — 3 , 4 );
m := ‘0’ + inttostr(month);
m := copy(m, length(m) — 1 , 2 );
d := ‘0’ + inttostr(day);
d := copy(d, length(d) — 1 , 2 );
result := y + m + d;
function Julian2date(julian: longint): string ;
x, y, d, m: longint;
month, day, year: integer;
x := 4 * julian — 6884477 ;
y := (x div 146097 ) * 100 ;
d := (x mod 146097 ) div 4 ;
y := (x div 1461 ) + y;
d := (x mod 1461 ) div 4 + 1 ;
m := x div 153 + 1 ;
d := (x mod 153 ) div 5 + 1 ;
year := y + m div 11 ;
result := mdy2date(month, day, year);
function checkdate(date: string ): boolean;
Это позволит получить необходимое значение.>
Это всегда будет правильной датой. Для проверки делаем обратное преобразование.
Результат проверки передаем как выходной параметр функции.>
if date = test then
function DayOfTheWeek(date: string ): string ;
и возвращаем день недели.>
julian := (Date2julian(date)) mod 7 ;
0 : result := ‘Понедельник’ ;
1 : result := ‘Вторник’ ;
2 : result := ‘Среда’ ;
3 : result := ‘Четверг’ ;
4 : result := ‘Пятница’ ;
5 : result := ‘Суббота’ ;
6 : result := ‘Воскресенье’ ;
Тем не менее, начиная со второй версии, Delphi содержат в своем арсенале замечательную функцию DayOfWeek, возвращающую целочисленный результат в диапазоне от 1 до 7. Вот пример кода, присланный Андреем Ивановым:
function TForm1.DayOfWeekRus(S: TDateTime): string ;
How to get localised day names in Delphi?
I’m using standard Delphi constants DayMonday, etc and I want to convert them to localized strings (eg «Lundi»). Is there a simple RTL or VCL call for this?
2 Answers 2
You can get different locale settings by:
GetThreadLocale gives the current LCID but you can use another number yourself.
You can even change the formatsettings yourself to create really fancy results.
I thought I had found a simple way for the «current locale».
There are global arrays LongDayNames[] and ShortDayNames[] defined in system.pas
should work, for example. Except it returns «Sunday». This is because Delphi internally supports two day numbering schemes, and DayMonday is an the ISO8601 constant 1, while the LongDayName array expects sunday as the first day of the week. C++Builder confuses things further because the string array then starts at zero, not one.
DayOfWeek — Функция Delphi
При задании значения даты-времени следует обратить внимание не только на сами значения, но и на знаки препинания. Несущественные части даты-времеи (например, секунды, минуты, часы) можно справа отбросить. В этом случае считается, что соответствующая часть равна нулю. Если в дате-времени отброшено еще и значение года, считается, что имеется в виду текущий год. Обычно тип дата-время используется в параметрах вариантного типа как один из допустимых вариантов, но может использоваться и самостоятельно для фиксации информации о времени.
Примечание. Следует иметь в виду, что при записи года двумя последними цифрами фактический год зависит от текущего года и глобальной переменной заданной в Delphi — TwoDigitYearCenturyWindow. По умолчанию эта переменная имеет значение, равное 50, что означает, что в конце этого столетия и начале следующего задаваемые двумя цифрами годы будут относиться к XX в., если число несколько больше 50, и к XXI в., если число несколько меньше 50.
В модуле SysUtils определен ряд стандартных функции работы с параметрами типа даты-времени.
- Time — текущее время. Функция возвращает текущее значение времени в формате TTime.
- Date — текущая дата. Функция возвращает текущее значение даты в формате TDate.
- Now — текущая дата и время. Функция возвращает текущее значение даты и времени в формате TDateTime.
- DateTimeToStr (DateTime) — символьное представление даты и времени. Функция формирует для параметра DateTime типа TDateTime символьное представление даты и времени с учетом региональной установки Windows и возвращает полученную строку в качестве результата своей работы.
- DateTimeToString (Result, Format, DateTime) — сформатированное символьное представление даты и времени. Процедура формирует символьное представление параметра DateTime типа TDateTime с учетом формата, заданного строкой Format, и помещает результат в строку Result.
- DateToStr (Date) — символьное представление даты. Функция формирует для параметра Date типа TDateTime или TDate символьное представление даты с учетом региональной установки Windows и возвращает полученную строку в качестве результата своей работы.
- DayOfWeek (Date) — день недели. Функция возвращает день недели заданной даты Date типа TDateTime или TDate в виде числа от 1 до 7, причем нумерация начинается с воскресенья.
- TimeToStr (Time) — символьное представление времени. Функция формирует для параметра Time типа TDateTime или TTime символьное представление времени с учетом региональной установки Windows и возвращает полученную строку в качестве результата своей работы.
- DecodeDate (Date, Year, Month, Day) — выделение в дате года, месяца, дня. Процедура выделяет из параметра Date типа TDateTime или TDate год, месяц, день и помещает их соответственно в параметры Year, Month и Day типа Word.
- DecodeTime (Date, Hour, Min, Sec, MSec) — выделение во времени часа, минуты, секунды и числа миллисекунд. Процедура выделяет из параметра Date типа TDateTime или TTime час, минуту, секунду и число миллисекунд и помещает их соответственно в параметры Hour, Min, Sec и MSec типа Word.
- EncodeDate (Year, Month, Day) — формирование даты из компонент. Функция формирует из заданного года, месяца и дня (заданных в параметрах Year, Month, Day) комплексный параметр типа TDateTime и возвращает его как результат работы.
- EncodeTime (Hour, Min, Sec, MSec) — формирование времени из компонент. Функция формирует из заданных часа, минуты, секунды и числа миллисекунд (заданных в параметрах Hour, Min, Sec, MSec) комплексный параметр типа TDateTime и возвращает его как результат работы.
- FormatDateTime (Format, DateTime) — сформатированное символьное представление даты и времени. Функция формирует символьное представление параметра DateTime типа TDateTime с учетом формата, заданного строкой Format, и возвращает полученную строку как результат своей работы.
- StrToDate (S) — преобразование символьного представления даты в тип TDateTime. Функция преобразовывает символьное представление даты, находящееся в строке S, в формат TDateTime или TDate и возвращает полученную величину как результат своей работы. Дата должна быть задана в соответствии с региональной установкой Windows.
- StrToTime (S) — преобразование символьного представления времени в тип TDateTime. Функция преобразовывает символьное представление времени, находящееся в строке S, в формат TDateTime или TTime и возвращает полученную величину как результат своей работы. Время должно быть задано в соответствии с региональной установкой Windows.
- StrToDateTime (S) — преобразование символьного представления даты и времени в тип TDateTime. Функция преобразовывает символьное представление даты и времени, находящееся в строке S, в формат TDateTime и возвращает полученную величину как результат своей работы. Дата и время должны быть заданы в соответствии с региональной установкой Windows.
Тепеть разберем некоторые функции на примерах.
DateTimeToString |
DateTimeToStr |
DateToStr |
TimeToStr |
А сейчас попробуем написать часы, применяя описанные выше процедуры и функции. С созданием цифровых часов не должно возникнуть никаких проблем, а вот с аналоговыми нужно повозиться. Но мы, как настоящие программисты, не боимся трудностей, и возьмемся за реализацию этой задачи. И первое, что мы сделаем при запуске программы, узнаем координаты центра часов и вычислим радиус.
Обновлять информацию о времени будем, используя таймер, и сделаем возможность запуска/остановки часов. Запускать и останавливать таймер будем следующей процедурой.
Таймер, через определенные интервалы времени, будет получать информацию о дате и времени, выводить ее, и вызывать процедуру рисования аналоговых часов.
А вот и сама процедура рисования аналоговых часов.
Из примера видно, что сделать часы, в том числе и аналоговые, не представляет из себя ничего сложного. Я думаю, не возникнет больших проблем при разборе данного примера.
DayOfWeek — Функция Delphi
уЕТЧЕТ РПДДЕТЦЙЧБЕФУС
ЛБЖЕДТПК ЙОЖПТНБФЙЛЙ Й ЧЩЮЙУМЙФЕМШОПК ФЕИОЙЛЙ зТзх
ФЕМ. +375-(0)152-445-101
E-mail : kadan@grsu.grodno.by
уРТБЧПЮОЙЛ РП ЖХОЛГЙСН Delphi. тБВПФБ У ДБФБНЙ Й ЧТЕНЕОЕН
ч Delphi ДМС ИТБОЕОЙС ДБФ Щ Й (ЙМЙ) ЧТЕНЕОЙ РТЕДХУНПФТЕО ЖПТНБФ TDateTime, РТЕДУФБЧМСАЭЙК УПВПК, ОБ УБНПН ДЕМЕ, ПВЩЮОПЕ ЮЙУМП У РМБЧБАЭЕК ФПЮЛПК.
рТЙ ЬФПН ДБФБ РТЕДУФБЧМСЕФУС ГЕМПК ЮБУФША ЮЙУМБ, Б ЧТЕНС ? ДТПВОПК. рТЕЙНХЭЕУФЧП ЬФПЗП РПДИПДБ Ч ФПН, ЮФП ФЕРЕТШ ДБФЩ Й ЧТЕНЕОБ НПЦОП ЛПТТЕЛФОП УЛМБДЩЧБФШ Й ЧЩЮЙФБФШ, ОБРТЙНЕТ:
How to get localised day names in Delphi?
I’m using standard Delphi constants DayMonday, etc and I want to convert them to localized strings (eg «Lundi»). Is there a simple RTL or VCL call for this?
2 Answers 2
You can get different locale settings by:
GetThreadLocale gives the current LCID but you can use another number yourself.
You can even change the formatsettings yourself to create really fancy results.
I thought I had found a simple way for the «current locale».
There are global arrays LongDayNames[] and ShortDayNames[] defined in system.pas
should work, for example. Except it returns «Sunday». This is because Delphi internally supports two day numbering schemes, and DayMonday is an the ISO8601 constant 1, while the LongDayName array expects sunday as the first day of the week. C++Builder confuses things further because the string array then starts at zero, not one.
DayOfWeek Routine
Unit Edit
Description Edit
Definition (Delphi 6, 2007, 2010):
Technical Comments Edit
(Known issues / Documentation clarifications / Things to be aware of)
Examples Edit
(Please provide links to articles/source code that show how to use this item.)
See Also Edit
(Please provide links to items specifically related to this item.)
User Comments/Tips Edit
(Please leave your name with your comment.)