Главная страница
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.028 c
14-1084340196
kopcap
2004-05-12 09:36
2004.05.30
Как удалить фаил........


1-1084794449
inic
2004-05-17 15:47
2004.05.30
Threadы и т.п.


3-1084352586
}|{yk
2004-05-12 13:03
2004.05.30
Как програмно поменять юзера в IBase


1-1084945035
Oleksiy
2004-05-19 09:37
2004.05.30
Как сохранить в реесте стиль шрифта?


1-1084861513
Sandman25+1
2004-05-18 10:25
2004.05.30
Параметры типа procedure of object