AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Frage zu record

Ein Thema von DelTurbo · begonnen am 10. Aug 2012 · letzter Beitrag vom 10. Aug 2012
 
Iwo Asnet

Registriert seit: 11. Jun 2011
313 Beiträge
 
#10

AW: Frage zu record

  Alt 10. Aug 2012, 11:25
Ich würde das nicht tun!
Denn packed records packen manchmal eben nicht so, wie man sich das denkt. Irgendwann (Arrays mit ungerader Länge) wird doch auf das nächst gerade Byte ausgerichtet und -wupps- hat man den Salat.

Lies die Daten lieber explizit über einen Stream Wert für Wert ein: Das geht so schnell, das merkst Du nicht. Spendiere also deinem Record eine Leseroutine
Delphi-Quellcode:
Type
   TKUIndexDaten = record
      Len :Word;
      Erased :Byte;
      Procedure LoadFromStream (stream : TStream);
   end;

Procedure TKUIndexDaten.LoadFromStream (stream : TStream);
begin
// Hier werden garantiert immer 3 Bytes gelesen (solange Word=2 Byte und Byte=1 Byte lang ist)
  stream.Read (Len, SizeOf(Len));
  stream.Read (Erased, SizeOf(Erased ));
End;
Um nun ein viele Records einzulesen rufst Du für jedes Element einfach die LoadFromStream-Methode auf.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:52 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz