Delphi справочник - Форум программистов - Навигация  
 A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z      По первой букве  
System     SysUtils     StrUtils     DateUtils     FileCtrl     ConvUtils     StdConvs     Math     Classes     Dialogs     Types     Variants    ПО Unit   Compiler directives     Directives     Keywords     Types     Variables     Constants     Functions     Procedures    По категории  
Подписаться на рассылку:
Клуб программистов


Основы Delphi
TwoDigitYearCenturyWindow
Переменная
Устанавливает порог столетия для преобразований строки года из 2 цифр SysUtils unit
  var TwoDigitYearCenturyWindow : Word;
Описание
Переменная TwoDigitYearCenturyWindow используется при преобразовании строки даты с 2-мя цифрами года в значение TDateTime. Значение TwoDigitYearCenturyWindow вычитается из текущей даты, чтобы установить конверсионный порог.

Например:

TwoDigitYearCenturyWindow: 50 (по умолчанию)
Текущий год: 2006
Тогда порог устанавливается в: 1956
100-летнее окно становится: 1956 - 2055

При преобразовании строки, где год состоит из 2 цифр, типа 75, эти 2 цифры сравниваются с 2-мя последними цифрами порога. Если больше, то дата находится в меньшем столетии, например 1975. Если ниже чем порог, то дата находится в более высоком столетии. Например, 44 дал бы 2044.
Примечания
Если значение TwoDigitYearCenturyWindow является нулевым, то значение всегда устанавливается в текущем столетии, независимо от этих 2 значений цифр.
Похожие команды
StrToDate  Конвертирует строку с датой в значение типа TDateTime

StrToDateTime  Конвертирует строку с датой и временем в значение типа TDateTime

 
Пример кода : Перемещаем порог, чтобы увидеть, как работает преобразование
var
  myDate : TDateTime;
  formattedDate : string;

begin
  // Установите дату с 2-мя цифрами года, используя порог заданный по умолчанию
  myDate := StrToDate('09/05/30');
  ShowMessage('09/05/30 используя порог по умолчанию = '+DateToStr(myDate));

  // Теперь изменяем порог заданный по умолчанию на 80:
  // 2007 (на время написания) - 80 дает 1927
  // 30 больше 22, так что выбирается 1900-ое столетие
  TwoDigitYearCenturyWindow := 80;
  myDate := StrToDate('09/05/30');
  ShowMessage('09/05/30 используя изменённый порог = '+DateToStr(myDate));
end;
09/05/30 используя порог по умолчанию = 09/05/2030
09/05/30 используя изменённый порог = 09/05/1930
 



© Блог программистов   |  Создание и продвижение сайтов - "Веб сателлит"  |  Ссылки  |     |  Английская версия