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

Вниз

Как прочесть из файла только первую строку?   Найти похожие ветки 

 
Tvon ©   (2004-01-11 07:51) [0]

Как прочесть из файла первую строку если список фалов находится в FilesList: TStringList? И каким способом это можно сделать быстрее?


 
Zergling ©   (2004-01-11 08:11) [1]

Библии по программированию почитай.
Посмотри примеры поставляемые с дельфи.
Как прочесть первую строку?
Зависит от типа файла, он текстовый или тепизированный, а может быть и нетипизированный он?


 
Tvon ©   (2004-01-11 09:15) [2]

Файл текстовый.
Пока мне в голову приходит только такой вариант:
procedure TForm1.Button1Click(Sender: TObject);
var i: Integer;
s: String;
begin
StrList.Clear;
for i:=0 to FilesList.Count-1 do begin
AssignFile(f,FilesList.Strings[i]);
Reset(f);
Readln(f,s);
StrList.Add(s);
CloseFile(f);
end;
end;

Но можно ли сделать выполнение этой процедуры быстрее используя не AssignFile и т.п., а другие процедуры? Т.к. файлов будет более 2000 необходима максимальная скорость.


 
Anatoly Podgoretsky ©   (2004-01-11 09:16) [3]

Readln 1 раз


 
Zergling ©   (2004-01-11 09:55) [4]

Tvon © (11.01.04 09:15) [2]

>> используя не AssignFile
Всеравно придется (или можешь эксплуатировать OpenFile)
>> необходима максимальная скорость.
Быстрее уже никак. Вариант - продумать упрошенную/или более удобную организацию данных в файлах или писать все это в базу данных (или же создать собственную БД)

Рекомендуется при работе с файлами использовать блок Try..

AssignFile(f,FilesList.Strings[i]);
Try
Reset(f);
Readln(f,s);
StrList.Add(s);
finally
CloseFile(f);
end;


 
KSergey ©   (2004-01-11 12:42) [5]

> [4] Zergling © (11.01.04 09:55)
> Рекомендуется при работе с файлами использовать блок Try..
>
> AssignFile(f,FilesList.Strings[i]);
> Try
> Reset(f);
> Readln(f,s);
> StrList.Add(s);
> finally
> CloseFile(f);
> end;

Только тогда уж

AssignFile(f,FilesList.Strings[i]);
Reset(f);
Try
Readln(f,s);
StrList.Add(s);
finally
CloseFile(f);
end;

т.к. открывается файл только в Reset, а если ошибка при открытии- то и закрывать нефига.



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

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

Наверх




Память: 0.48 MB
Время: 0.027 c
8-63258
Psibug
2003-09-15 19:24
2004.01.20
Antialiasing в Opengl


14-63373
asdqwer
2003-12-28 19:40
2004.01.20
Алгоритм


14-63329
Шишкин Илья
2003-12-26 21:26
2004.01.20
Беспроводная оптическая мышь Logitech MX700


1-63186
DDA
2004-01-10 12:00
2004.01.20
ComboBox vs Panel


1-63198
bert
2004-01-10 02:42
2004.01.20
Запрет выделения в StringGrid