Forum: Datenbanken
Delphi
by marabu,
9. Feb 2006
Hallo Mitchl,
schau nochmal etwas genauer - auf der Seite wird ein ZIP Archiv mit drei Dateien angeboten. Die Datei PxFormat.txt habe ich mir angesehen, um den Code zu bauen.
Wenn du die Werte aller Felder in allen Datensätzen auslesen willst, dann wirst du dir eine Struktur definieren müssen, die diese Werte aufnehmen kann. Wenn dein Programm mit nur einer Tabellenstruktur umgehen können...
Forum: Datenbanken
Delphi
by marabu,
9. Feb 2006
Guten Morgen, Mitchl.
Kennst du eigentlich diese Website: klick ?
Mit den Informationen von dort lese ich deine drei Werte ein und zeige sie an:
procedure SwapBytes(var buffer; size: word);
var
b: byte;
Forum: Datenbanken
Delphi
by marabu,
8. Feb 2006
Du hast genau verstanden, was meine Prozedur macht.
Wenn sich der Inhalt deiner Tabelle in einem ByteArray befindet, dann kannst du die 8 Byte, anstatt sie zu lesen, einfach in eine Variable passenden Typs kopieren:
uses
Types;
function ExtractDouble(ba: TByteDynArray; offset: Cardinal): Double;
begin
Forum: Datenbanken
Delphi
by marabu,
8. Feb 2006
Ach Mitchl, was treibst du da? Hast du schonmal probiert deinen Code zu kompilieren? Eine Variable w vom Typ Double kannst du nicht mit einem leeren String initialisieren. Ich habe Zweifel, ob du überhaupt weißt, an welchen Offsets in einer Tabellendatei - das sind die mit der Erweiterung .db - currency Werte stehen. Und wenn du die Datei vorher schon komplett eingelesen hast, dann zeige die 2...
Forum: Datenbanken
Delphi
by marabu,
8. Feb 2006
Ja sicher das.
ShowMessage(Format('%m', ));
marabu
Forum: Datenbanken
Delphi
by marabu,
8. Feb 2006
Hallo Mitchl,
wenn du weißt an welcher Stelle in der Datei die Information steht, dann kannst du sie z.B. so einlesen:
procedure ReadDouble(fn: TFileName; offset: Cardinal; var d: Double);
var
fs: TFileStream;
begin
fs := TFileStream.Create(fn, fmOpenRead, fmShareDenyWrite);