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

Вниз

BlockRead и AV   Найти похожие ветки 

 
Vovan #2   (2007-01-17 16:29) [0]

Что я делаю не так? Размер файла 100 Кб.


var f: file;
   i: Integer;
begin
  OpenDialog1.Execute;
  AssignFile(f, OpenDialog1.Filename);
  Reset(f);
  BlockRead(f, i, SizeOf(Integer));
  CloseFile(f);


---> AV


 
Германн ©   (2007-01-17 16:31) [1]

Reset(f,1);


 
Vovan #2   (2007-01-17 16:36) [2]

М-м, похоже. Спасибо!

А почему когда я до этого делал

BlockRead(f, SomeHeader, SizeOf(TSomeHeader));

то читало нормально?


 
Плохиш ©   (2007-01-17 16:37) [3]


> А почему когда я до этого делал
>
> BlockRead(f, SomeHeader, SizeOf(TSomeHeader));
>
> то читало нормально?

Повезло...


 
Германн ©   (2007-01-17 16:38) [4]


> А почему когда я до этого делал
>
> BlockRead(f, SomeHeader, SizeOf(TSomeHeader));
>
> то читало нормально?
>

Это тебе только так казалось.


 
palva ©   (2007-01-17 16:42) [5]

Параметр у Reset это длина блока в байтах. По умолчанию длина блока какая-то довольно большая. При чтении мы должны указать длину в БЛОКАХ. Поэтому если длины файла хватило, то может прочитаться, если длину блока забыли указать. Единственно, что прочтется гораздо больше чем запрошено, и могут затереться какие-то другие области.



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

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

Наверх




Память: 0.47 MB
Время: 0.055 c
2-1169308409
Jeeb
2007-01-20 18:53
2007.02.04
Числовые значения mегаfона на кнопку... и Post


2-1169219514
Linu_X_oid
2007-01-19 18:11
2007.02.04
Объясните, пожалйста, как можно нормально создать чат в Delphi 7


1-1165779902
Phoroon
2006-12-10 22:45
2007.02.04
Collection и Thread


3-1163579842
kulkse
2006-11-15 11:37
2007.02.04
Если сервер отключен (как обработать ошибку)


4-1158843366
GanibalLector
2006-09-21 16:56
2007.02.04
Передача строки из доп.потока с основной