Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.11.11;
Скачать: CL | DM;

Вниз

Работа с файлами   Найти похожие ветки 

 
Incognito ©   (2002-11-02 02:33) [0]

Может немного не по теме, но всё же решил вопрос засунуть в этотраздел.

Прога ведёт лог.
Выглядит примерно так:

Date: xx.xx.xx
xxxxxxxxxx
xxxxxxxxxxx
xxxxxxxxx
xxxxxxx

Date: xx.xx.xx
xxxx
xxxxxxxx
xxxx
ну итд.

При запуске прога должна найти последнюю строку Date: xx.xx.xx
и считать оттуда значение даты. как это реализовать?
Заранее багодарен.


 
Andriano ©   (2002-11-02 09:08) [1]

Можно так
****************
uses ......,StrUtils

var
strings:TStringList;
s:string;
i:integer;
begin
strings:=TStringList.Create;
strings.LoadFromFile("Имя файла");
s:="";
for i:=strings.Count-1 to 0 do begin
s:=strings[i]+ifThen(s="","",", ")+s;
if pos("Date:",s)>0 then break;
end;
delete(s,pos("Date:",s),5);
strings.Free;
end;
***************
Результат - s
Разделитель строк в s - "," , но можно любой, в т.ч. и #13#10


 
Andriano ©   (2002-11-02 10:44) [2]

Обшибся :( вместо "strings.Count-1 to 0" надо "strings.Count-1 downto 0" :)


 
Incognito ©   (2002-11-03 00:09) [3]

Я ж сказал "не по теме" :-)
Andriano
Спасиб-выручил.
Только я немного всё переделал, но всё равно спасибо.
О сущёствовании класса TStringList я не знал. Полезная штука оказалась.
А вот как я сделал, если кому интересно:

content:=TStringList.Create;
content.LoadFromFile(LogPath);
i:=content.Count-1;
while i>=0 do begin
if Copy(content[i],1,4)="Date" then
begin
LastDate:=Copy(content[i],7,10);
Break;
end;
i:=i-1;
end;



Страницы: 1 вся ветка

Текущий архив: 2002.11.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.016 c
3-33880
ScareCrow
2002-10-22 15:47
2002.11.11
Смена Table Langauge для табл.формата Paradox


3-33918
Andriano
2002-10-23 12:19
2002.11.11
Подскажите БД-новичку


14-34239
Polevi
2002-10-23 16:34
2002.11.11
http://www.yandex.ru/yandsearch?text=DS+J%7BETKB%3F+NJDFHBO+


1-33988
maxim_caban
2002-11-01 17:24
2002.11.11
Интерфейс как в Д5


3-33861
comp
2002-10-21 13:22
2002.11.11
Порядковый номер