Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.05.01;
Скачать: [xml.tar.bz2];

Вниз

размер блока кратен размеру файты. eof не работает.   Найти похожие ветки 

 
Zirus   (2003-04-18 10:42) [0]

Здравствуйте! Имеем двоичный файл случайного размера. Читаем блоки по 64 байт. Если размер файла кратен 64 - eof не работает! в blockread(fi,x,64,i) i никогда не будет меньше 64, даже если файл закончился! Также не помогает условие if filepos(fi)>filesize(fi) then r:=0! Тут программа вылетает с ошибкой... Как можно решить данную проблему?


var x: array[1..64] of byte;
i: integer;
f: file;
begin
if OpenDialog1.Execute then
begin
AssignFile(fi, OpenDialog1.FileName);
reset(fi,1);
end;
if r=0 then ...
1:
if r=1 then begin
blockread(fi,x,64,i);
if i<64 then r:=0;
if eof(fi)=true then r:=0;
...
end;
goto 1


 
Palladin   (2003-04-18 10:57) [1]

Reset(fi,1)
repeat
BlockRead(fi,x,64,i)
блабла
until i=0;
closefile(fi);


 
Cobalt   (2003-04-18 12:17) [2]

filepos(fi) >=filesize(fi)


 
Anatoly Podgoretsky   (2003-04-18 12:24) [3]

Palladin © (18.04.03 10:57)
goto куда девал зараза?


 
Palladin   (2003-04-18 12:28) [4]

:)
ой...
куда то исчезло незаметно...



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

Форум: "Основная";
Текущий архив: 2003.05.01;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.008 c
14-721
я - аноним
2003-04-13 00:20
2003.05.01
именинники 13 апреля


3-416
Silver_
2003-04-11 15:30
2003.05.01
ADODataSet - Parameters


7-809
Гульшат
2003-03-13 17:02
2003.05.01
открыть программу


3-484
reticon
2003-04-14 12:21
2003.05.01
удаление записи в таблице dBase


1-562
AndrewK
2003-04-16 14:15
2003.05.01
Как создать форму из dfm?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский