Вопрос
Версия языка:6
Как правильно (удобно и удачно) работать с датами?
Например в типе TDateTime даты записываются как dd.mm.yy, а хотелось бы dd.mm.yyyy, т.к. путаница получается. Дайте plz совет по этому поводу.
И еще одно: есть строка с датой. Если ли стандартные функции для проверки правильности синтаксиса введенной даты? А то если дата неправильная прога просто вылетает с ошибкой :( Что посоветуете?
Ответ
1. formatdatetime('dd' + dateseparator + 'mm' + dateseparator + 'yyyy', date);
2.На OnKeyPress повесить
if (key = '.') or (key = ',') or (key = '/') then key := dateseparator;
это чтобы победить просто неправильный разделитель, или сделать проверку опосля окончания ввода
var d: tdatetime;
try
d := strtodate(edit1.text);
except
d := date;
// материмся чем-нибудь красным
// по поводу неверного ввода и предупреждаем,
// что по умолчанию воткнули текущую дату
end;
edit1.text := datetostr(d);
faormatdatetime — (F1)
strtodate — (F1)
datetostr — (F1)
Из конференции Expert_FAQ
Copyright 2000-2004 Сообщество Чайников
Контактная информация