Einzelnen Beitrag anzeigen

Benutzerbild von sniper_w
sniper_w

Registriert seit: 12. Dez 2004
Ort: Wien, Österriech
893 Beiträge
 
Delphi 6 Enterprise
 
#11

Re: Datei lesen auf "einmal"

  Alt 27. Apr 2006, 20:02
ich habe es inzwischen so gemacht:
Delphi-Quellcode:
  TByteArray = array of Byte;
function S_win_ReadFile(const FileName: string; var Data: Pointer): Cardinal;
var
  FileHandle, BytesRead: Cardinal;
begin
  FileHandle := CreateFile(PChar(FileName), GENERIC_READ, 0, nil,
    OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
  if FileHandle = INVALID_HANDLE_VALUE then
  begin
    Result := 0;
    Data := nil;
    Exit;
  end;
  Result := GetFileSize(FileHandle, nil);
  GetMem(Data, Result);
  ReadFile(FileHandle, Data^, Result, BytesRead, nil);
  CloseHandle(FileHandle);
end;

function S_pascal_ReadFile(const FileName: string; var Data: TByteArray): Cardinal;
var
  FileHandle: file;
  BytesRead: Cardinal;
begin
{$I-}
  AssignFile(FileHandle, FileName);
  Reset(FileHandle, 1);
  Result := FileSize(FileHandle);
  SetLength(Data, Result);
  BlockRead(FileHandle, Data[0], Result, BytesRead);
  CloseFile(FileHandle);
{$I+}
end;
Katura Haris
Es (ein gutes Wort) ist wie ein guter Baum, dessen Wurzel fest ist und dessen Zweige in den Himmel reichen.
  Mit Zitat antworten Zitat