Текущий архив: 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.47 MB
Время: 0.039 c