![]() |
Datenmüll bei Konvertierung von Dateien TP5.5 -> Delphi 4
Und da bin ich wieder mit meinem Konvertierungproblemchen.
Also ... Ich habe verschiedene Strukturen (Records) die in einem alten DOS Programm in eine Datei gespeichert wurden. Ich schreibe nun an einem Konvertierungsprogramm welches diese Dateien einliest und in neue Strukturen packt. Soweit so gut - das klappt auch alles sofern ich mich auf die Strings beziehe - nur kommt er irgendwie mit den Zahlen stark durcheinander. Mal ein Bsp für solch Records Alt:
Delphi-Quellcode:
Neu:
Lief_recA= packed record
TA_Status : LongInt; { Status 0...belegt } L_Nr : str12; { interne Lief.-Nummer } L_Name : str40; L_Erf : boolean; { Erfassung kg oder l true...kg } L_Max_T : real48; { max. Rohmilchtemp. } L_Art : Byte; { Tierart 1..Rinder } L_Tour : smallint; L_Molk : Byte; L_Aktiv : Char; { Lief. aktiv o. passiv } L_Statistik : Boolean; L_Referenz : Boolean; L_J_Ist : array [1..12,Qualitaet] of real48; L_VJ_Ist : array [1..3,Qualitaet] of real48; end;
Delphi-Quellcode:
gibt es irgendwas was ich nicht beachtet habe?
Lief_rec= Record
L_Nr : str12; { interne Lief.-Nummer } L_Name : str40; L_Erf : Char; { Erfassung kg oder l true...kg } L_Max_T : real48; { max. Rohmilchtemp. } L_Art : Char; { Tierart 1..Rinder } L_Tour : SmallInt; L_Molk : Byte; L_Aktiv : Char; { Lief. aktiv o. passiv } L_Statistik : Boolean; L_Referenz : Boolean; L_J_Ist : array [1..12,Qualitaet] of real48; L_VJ_Ist : array [1..3,Qualitaet] of real48; end; vielen Dank für die Antwort |
Re: Datenmüll bei Konvertierung von Dateien TP5.5 -> Delp
Du hast das "packed" vor dem record entfernt, damit werden die Felder anders angeordnet. Zusätzlich suche in der Delphi-Hilfe mal nach real48, da gibt es, soweit ich weiß, ein Kompatibilitätsproblem.
...:cat:... |
Re: Datenmüll bei Konvertierung von Dateien TP5.5 -> Delp
Hmm, jetzt hab ich packed vor allen records geschrieben, ich erhalte nun "bessere" Ergebnisse - trotzdem sind sie noch völliger Quatsch. Leider finde ich zu dem Real48 Problem nix - zumindest nicht in der Hilfe
[Edit] Muss ich vielleicht auch noch die Arrays in den records packed machen?[/Edit] |
Re: Datenmüll bei Konvertierung von Dateien TP5.5 -> Delp
Zitat:
Zitat:
Delphi-Quellcode:
Gleiches gilt für das Alignment der Felder innerhalb von Records und Arrays. Dazu einfach das Alignment ausschalten.
{$REALCOMPATIBILITY ON}
Delphi-Quellcode:
Beide Schalter am besten vor jede Record-/Typendefinition setzen, die an alte Daten muss. Anschließend wieder die Schalter zurücksetzen und die Daten im neuen (effizientieren) Format sichern.
{$ALIGN OFF}
Zitat:
...:cat:... |
Re: Datenmüll bei Konvertierung von Dateien TP5.5 -> Delp
Ich hab grad gemerkt das die eigentliche Konvertierung funktioniert, nur das spätere "reinschieben" in ein Blobfeld - oder das Auslesen is irgendwie nich ordentlich - hmmmm -shit- (sorry für Kraftausdruck)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:07 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