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

Вниз

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

 
lehich ©   (2004-05-18 09:57) [0]

есть:

AssignFile (LogFile, "enter.log");
if not FileExists ("enter.log") then
 begin
 Rewrite (LogFile);
 Pos := 0;
 end
 else
 begin
 Reset (LogFile);
 Pos := 0;
 end;
for i := 0 to FileSize (LogFile) do
begin
inc (Pos);
Seek (LogFile, Pos);
Read (LogFile, LogData);
datlist:= LogData.user + LogData.dt;
ListBox1.Items.Add(datlist);
end;

выдает следующую ошибку:
"read beyond end of file" на строке "Read (LogFile, LogData);"

почему???

Заранее премного благодарен...


 
Kerk ©   (2004-05-18 10:22) [1]

Может так?
AssignFile (LogFile, "enter.log");
if not FileExists ("enter.log") then
begin
Rewrite (LogFile);
Pos := 0;
end
else
begin
Reset (LogFile);
Pos := 0;

for i := 0 to FileSize (LogFile) do
begin
Seek (LogFile, Pos);
Read (LogFile, LogData);
datlist:= LogData.user + LogData.dt;
ListBox1.Items.Add(datlist);
inc (Pos);
end;

end;


 
Kerk ©   (2004-05-18 10:24) [2]

Всмысле: инкрементируй позицию в конце цикла.


 
Плохиш   (2004-05-18 10:30) [3]

>lehich ©   (18.05.04 09:57)

Что сообщение об ошибке не можешь перевести?


 
Плохиш   (2004-05-18 10:34) [4]

И вообще оригинальный способ работы с текстовыми файлами.


 
Kerk ©   (2004-05-18 10:43) [5]


> Плохиш   (18.05.04 10:34) [4]

С чего ты взял, что файл текстовый?


 
Плохиш   (2004-05-18 10:47) [6]

>Kerk ©   (18.05.04 10:43) [5]

> С чего ты взял, что файл текстовый?

сабж прочитал


 
Kerk ©   (2004-05-18 10:51) [7]


> Плохиш   (18.05.04 10:47) [6]
сабж прочитал

:-)
Блин, я до этого не додумался...


 
Anatoly Podgoretsky ©   (2004-05-18 10:52) [8]

while not Eof b seek/inc
А ругает правильно, пытаешьшся читать за пределами файла
Пускай у тебя в файле одна запись, тогда FileSize = 1, теперь посчитай сколько раз выполнится цикл и чему будет равно твое I на каждом шаге. Это не сложно будет сделать на бумаге для одной записи, не говоря уже про использования одного из отладчиков.


 
lehich ©   (2004-05-18 10:54) [9]

ошибка в строке "Read (LogFile, LogData);"... inc (Pos); на работоспособность не влияет... хотя воткнут на самом деле не туда...)))))


 
NikeOLD   (2004-05-18 11:01) [10]

Читай
> Anatoly Podgoretsky ©   (18.05.04 10:52) [8]
, если по другому никак! Если не вник, читай пока не вникнешь!


 
lehich ©   (2004-05-18 11:06) [11]

2Anatoly Podgoretsky тыкс... если одна запись тогда цикл выполнится для i равном 0 и 1... т.е. два раза...


 
lehich ©   (2004-05-18 11:08) [12]

2Anatoly Podgoretsky сенкс... всё... дошло...))))) это все виноват вчерашний фильм "ван хельсинг" и куча пива...))))) всё заработало...))))


 
Sergp ©   (2004-05-18 11:09) [13]

Может  for i := 0 to FileSize (LogFile)-1 do ?



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

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

Наверх




Память: 0.49 MB
Время: 0.039 c
1-1085044874
NetworK
2004-05-20 13:21
2004.05.30
Объект как var параметр ф-ции


1-1085028008
Balkon
2004-05-20 08:40
2004.05.30
"Конфликт" QuickReport и TQRRichText


14-1083952838
Blackman
2004-05-07 22:00
2004.05.30
Стишок на ночь


9-1073923296
RosTO
2004-01-12 19:01
2004.05.30
Полупрозрачность и Blur!!


6-1081295507
juggler
2004-04-07 03:51
2004.05.30
IEParser и событие OnNewWindow2