![]() |
Byte Schiebereien oder woher kommen diese 2 Bytes?
ich bin grad dabei ein Datenkonvertierungsprogramm zu schreiben von einem alten DOS-Proggy auf die neue Winversion. Dazu muss ich ja die alten Daten ja erstmal einlesen, so sehen die erstmal aus :
Delphi-Quellcode:
ausgerechnet hab ich ne Grösse von 1062 Bytes, mit sizeOf bekomme ich aber 1064 - diese 2 Bytes fehlen auch beim nächsten record (achso, ich lese das ganze per stream aus einer Datei aus :) ) - wo finde ich die fehlenden bytes - Delphi Version ist 4
Lief_rec= Record
TA_Status : LongInt; L_Nr : string[12]; L_Name : string[40]; L_Erf : boolean; L_Max_T : real48; L_Art : Byte; L_Tour : smallInt; L_Molk : Byte; L_Aktiv : Char; L_Statistik : byte; L_Referenz : byte; L_J_Ist : array [1..12,1..11] of real48; L_VJ_Ist : array [1..3,1..11] of real48; end; danke schonmal im Vorraus |
Re: Byte Schiebereien oder woher kommen diese 2 Bytes?
Delphi passt den Buffer auf 4-Bytes an.
Grund: schnelle Zugriff im speicher schreib einfach
Delphi-Quellcode:
packed record
|
Re: Byte Schiebereien oder woher kommen diese 2 Bytes?
..ich habs nicht ausgerechnet, aber könnten das die beiden Längenbytes der Strings sein?
|
Re: Byte Schiebereien oder woher kommen diese 2 Bytes?
...sorry, hatte nicht richtig gelesen....
|
Re: Byte Schiebereien oder woher kommen diese 2 Bytes?
@Billa : kein problem
@neolithos : das hat geholfen, danke! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:26 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