Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Работа с файлами [D6]


Incognito ©   (2002-11-02 02:33:00) 

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

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

Date: xx.xx.xx
xxxxxxxxxx
xxxxxxxxxxx
xxxxxxxxx
xxxxxxx

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

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


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

Я ж сказал "не по теме" :-)
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;


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

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


Andriano   (2002-11-02 09:08:00) [3]

Можно так
****************
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


Наверх

Титульная страница Поиск, карта сайта Написать письмо