Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Проверка даты и вывод в зависимости от неё

11K
22 октября 2006 года
NeverBC
40 / / 27.08.2006
Очень глупый вопрос, но тем не менее, очень уж нужен ответ на него.
У меня в проекте есть 2 некоторых функции.
Мне нужно чтобы некоторая дата читалась из другого txt-файла и если текущая дата==дате в файле, запускалась первая функция, а если не равна, то вторая функция. Вроде очень просто, но я у меня так и не получилось написать рабочий вариант, т.к. всего пару дней с дельфями. Помогите, оч нада )
242
22 октября 2006 года
Оlga
2.2K / / 04.02.2006
а где попытки которые не получились?
261
22 октября 2006 года
ahilles
1.5K / / 03.11.2005
if data1 = nowdata then
function1 else function2;
и чего здесь сложного?
8
22 октября 2006 года
mfender
3.5K / / 15.06.2005
Думаю, сложность у автора больше в чтении этой даты из файла?..
387
22 октября 2006 года
Ihbif19
421 / / 28.10.2004
[quote=NeverBC]Очень глупый вопрос, но тем не менее, очень уж нужен ответ на него.
У меня в проекте есть 2 некоторых функции.
Мне нужно чтобы некоторая дата читалась из другого txt-файла и если текущая дата==дате в файле, запускалась первая функция, а если не равна, то вторая функция. Вроде очень просто, но я у меня так и не получилось написать рабочий вариант, т.к. всего пару дней с дельфями. Помогите, оч нада )[/quote]
var
lt: TSYSTEMTIME;
const
d= '';
begin
GetLocalTime(lt);
d := memo1.lines.loadfromfile('t.txt'); //например 10-22-2006
//Получаем текущие месяц-дату-год
Form_view.caption := IntToStr(lt.wmonth)+'-'+IntToStr(lt.wDay)+'-'+
IntToStr(lt.wYear);

if d <= Form_view.Caption then
ShowMessage('Время Вышло');
8
22 октября 2006 года
mfender
3.5K / / 15.06.2005
К чему такие сложности?

Код:
const
  FILE_NAME = 'datetime.txt';
 
type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    procedure SetTime(const FileName: String; const Time: TDateTime);
    function GetTime(const FileName: String): TDateTime;
  end;
 
implementation
 
function TForm1.GetTime(const FileName: String): TDateTime;
var
  F: TextFile;
  Time: Double;
begin
  AssignFile(F, FileName);
  Reset(F);
  Readln(F, Time);
  CloseFile(F);
  Result := Time;
end;
 
procedure TForm1.SetTime(const FileName: String; const Time: TDateTime);
var
  F: TextFile;
begin
  AssignFile(F, FileName);
  Rewrite(F);
  Writeln(F, Now());
  CloseFile(F);
end;
 
procedure TForm1.Button1Click(Sender: TObject);
var
  DT: TDateTime;
begin
  SetTime(FILE_NAME, Now());
  DT := GetTime(FILE_NAME);
  showmessage(DateTimeToStr(DT));
end;


Ну, а дальше - как советовали выше... Это просто иллюстрация, как поступить с файлом...
11K
22 октября 2006 года
NeverBC
40 / / 27.08.2006
Попробовал последнее, компилирует вроде без ошибок, но выводит ошибку при запуске, ResNotFound.
11K
22 октября 2006 года
NeverBC
40 / / 27.08.2006
Всё ок, разобрался.
Теперь такой вопрос. При записе в файл дата принимает странный формат, типа 3.68218749050463E+0004, нельзя ли переводить в нормальный вид?
11K
22 октября 2006 года
NeverBC
40 / / 27.08.2006
и ещё киньте плс в таком же стиле чтение из файла и вывод даты такого формата.
11K
22 октября 2006 года
NeverBC
40 / / 27.08.2006
[QUOTE=NeverBC]Всё ок, разобрался.
Теперь такой вопрос. При записе в файл дата принимает странный формат, типа 3.68218749050463E+0004, нельзя ли переводить в нормальный вид?[/QUOTE]
DateTimeToStr ) понял
11K
22 октября 2006 года
NeverBC
40 / / 27.08.2006
Ответьте плз всего на один вопросик.
Можно ли мне переменную в формате даты перевести в TStrings и как это сделать, последний штрих так сказать.
8
22 октября 2006 года
mfender
3.5K / / 15.06.2005
[QUOTE=NeverBC]Ответьте плз всего на один вопросик.
Можно ли мне переменную в формате даты перевести в TStrings и как это сделать, последний штрих так сказать.[/QUOTE]
TStrings - это вообще абстрактный класс. От него наследуются другие, но непосредственно с ним не нужно ничего делать. И что подразумевается под "перевести переменную в формате даты в TStrings"? Это совсем разные вещи и никак между собой не пересекаются.

Могу предположить, что можно создать объект-наследник, типа TStringList, где каждым элементом будет число Double, означающее какое-то время. Или каждый элемент будет записью типа TTimeStamp... Примерно так. Иного применения TStrings не вижу в данном случае...
339
23 октября 2006 года
verybadbug
619 / / 12.09.2005
Цитата:
Можно ли мне переменную в формате даты перевести в TStrings


если имеется в виду добавить в список - можно так

 
Код:
memo1.lines.add(datetimetostr(now)); //(memo1.lines: TStrings)

если записать взамен существующих строк - тогда так
 
Код:
memo1.lines.text := datetimetostr(now);
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог