![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Помогите пожалуйста [D6, WinXP]
Vladimir © (2002-12-29 14:59:00)У меня проблема с функцией FileRead. Она не считывает из открытого файла в буфер.
Ниже приведён листинг кода:
var
iFileHandle: Integer;
iFileLength: Integer;
iBytesRead: Integer;
Buffer: PChar;
i: Integer;
begin
try
iFileHandle := FileOpen("D:\Test.txt", fmOpenRead);
iFileLength := FileSeek(iFileHandle,0,2);
FileSeek(iFileHandle,0,0);
Buffer := PChar(AllocMem( iFileLength + 1));
iBytesRead := FileRead( iFileHandle, Buffer, iFileLength);
FileClose(iFileHandle);
ShowMessage(IntToStr(Integer(Buffer[5])));
//rEdit.Text := rEdit.Text + IntToStr(Integer(Buffer[i]));
finally
FreeMem(Buffer);
end;
end;
Помогите пожалуйста.
sask (2002-12-29 15:16:00) [1]1.
iBytesRead := FileRead( iFileHandle, Buffer^, iFileLength);
2. Поставьtryпосле выделения памяти под буфер.
(а то может получиться нехорошая вещь - если до выделения памяти произойдет исключение)