Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.452 Beiträge
 
Delphi 12 Athens
 
#3

AW: Extended aus File of Record in 64 Bit lesen

  Alt 23. Apr 2024, 17:22
Dazu musst du die Felder als TExtended80Rec deklarieren. Diese kannst du dann zum Lesen als als Extended casten bzw. per TExtended80Rec-Cast beschreiben. Der Cast auf Extended hat den Vorteil, dass man bei 32-Bit die Genauigkeit nicht verliert.

Update: Ich habe noch ein Beispiel gefunden, wo Extended-Werte plattformneutral in einen Stream gespeichert und daraus gelesen werden:
Delphi-Quellcode:
procedure TExtendedValue.LoadFromStream(Stream: TStream);
var
  buffer: TExtended80Rec;
begin
  Stream.ReadBuffer(buffer, Sizeof(buffer));
  FValue := Extended(buffer);
end;

procedure TExtendedValue.SaveToStream(Stream: TStream);
var
  buffer: TExtended80Rec;
begin
  buffer := TExtended80Rec(FValue);
  Stream.WriteBuffer(buffer, Sizeof(buffer));
end;
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming

Geändert von Uwe Raabe (23. Apr 2024 um 17:27 Uhr) Grund: Beispiel
  Mit Zitat antworten Zitat