Einzelnen Beitrag anzeigen

Benutzerbild von bitsetter
bitsetter

Registriert seit: 17. Jan 2007
1.169 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Dateien binär beschreiben?

  Alt 16. Feb 2008, 12:03
Im Prinzip kannst du auch einen Record also Datenstrukturen, Arrays oder ähnliches mit einem TFileStream lesen und schreiben.
Delphi-Quellcode:
Type
  TMyData = packed record
    Int: integer;
    B: Byte;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  FileStream: TFileStream;
  //MyData: Byte;
  //MyData: array[0..20] of byte;
  MyData: TMyData;
  Pfad: AnsiString;
begin
  Pfad := 'D:\...';
  ZeroMemory(@MyData, SizeOf(MyData));
  if FileExists(Pfad) then
  begin
    FileStream := TFileStream.Create(Pfad, fmOpenReadWrite);
    try
      FileStream.Read(MyData, SizeOf(MyData));//Daten lesen

      MyData.Int := ...;//Daten ändern
      MyData.B := ...;

      FileStream.Position := 0;
      if FileStream.Write(MyData, SizeOf(MyData)) = SizeOf(MyData) then //Daten schreiben
        Showmessage('fertig');
    finally
      FileStream.Free;
    end;
  end;
end;
Gruß bitsetter
"Viele Wege führen nach Rom"
Wolfgang Mocker (geb. 1954), dt. Satiriker und Aphoristiker
  Mit Zitat antworten Zitat