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

Вниз

зависание проги при чтении из файла в цикле   Найти похожие ветки 

 
_Tirex_   (2006-01-26 18:15) [0]

есть такой код, при выполнении прога зависает?
в файле телефонные номера(цифр 10) в столбик,
procedure TForm1.FormCreate(Sender: TObject);
begin
 First_lst:=TStringLIst.Create;
 First_lst_count:=0;
 od1.InitialDir:=ExtractFileDir(Application.ExeName);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
 First_lst.Free;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 if od1.Execute then
 begin
   load1list(od1.FileName);
   ListBox1.Items:=First_lst;
 end;
end;

procedure load1list(fn: string);
var
 temp_str: string;
begin
 AssignFile(First_lst_file,fn);
 Reset(First_lst_file);

 repeat
   read(First_lst_file,temp_str);
   First_lst.Add(temp_str);
 until eof(First_lst_file);

{  while not eof(First_lst_file) do;
 begin
   read(First_lst_file,temp_str);
   First_lst.Add(temp_str);
 end;
 }

 CloseFile(First_lst_file);
end;


 
Fay ©   (2006-01-26 18:27) [1]

ку?
procedure load1list(fn: string);
var
 sl : TStringList;
begin
 sl := TStringList.Create;
 try
   sl.LoadFromFile(fn);
   First_lst.AddStrings(sl);
 finally
   sl.Free;
 end;
end;


 
Fay ©   (2006-01-26 18:28) [2]

В смысле
procedure TForm1.load1list(fn: string);
...


 
umbra ©   (2006-01-26 18:30) [3]

repeat
  readln(First_lst_file,temp_str);
  First_lst.Add(temp_str);
until eof(First_lst_file);


В Вашем коде read читает первую строку, а затем бесконечно возвращает пустую строку, поскольку не может пройти символы конца строки


 
_Tirex_   (2006-01-26 20:04) [4]

2 Fay
спасибо за оптимизацию,
2 umbra
спасибо! не обратил внимания.



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

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

Наверх




Память: 0.47 MB
Время: 0.04 c
2-1138082942
Andruh
2006-01-24 09:09
2006.02.12
проблема с выводом в мемо


2-1138029460
Змей
2006-01-23 18:17
2006.02.12
текст по центру в edit


1-1137163081
yarvu
2006-01-13 17:38
2006.02.12
Зоздание объекта в др.приложении.


2-1138253763
Radix
2006-01-26 08:36
2006.02.12
Сделать выборку пропущенных номеров из БД на SQL


15-1138020310
dan317
2006-01-23 15:45
2006.02.12
список раскрывающихся абзацев : посоветуйте компонент