![]() |
Speichern enthält Fehler? Wie anders speichern?
Hallo an alle, ich bin dabei ein weiteres Adressbuch zu programmieren. Bei der ersten Version habe ich die Daten in eine Datei speichern lassen, die danach mit dem Editor lesbar war. Hier der Quelltext dazu:
Delphi-Quellcode:
Mein Problem ist, dass er mir immer eine Fehlermeldung bringt, und zwar oben bei dem Festlegen der Variable Datf:File of TDaten... "Typ 'TDaten' benötigt Finalization - nicht im Dateityp erlaubt" Diese Meldung wird mir ausgegeben, allerdings hat genau dieser Code bei meinem ersten Adressbuch funktioniert. Was ist da los?
procedure TForm1.Speichern1Click(Sender: TObject);
var Datf:File of TDaten; Daten1:TDaten; begin aenderung:=false; Edit1.Clear; if (dateiname='') then begin Speichernunter1Click(Sender); end else begin if (anfang.nachfolger <> ende) then begin lauf:=TKnoten.Init; Assignfile(Datf,dateiname); Rewrite(Datf); lauf:=anfang; repeat lauf:=lauf.nachfolger; daten1:=lauf.Daten; write(Datf,daten1); until (lauf.nachfolger=ende); closefile(Datf); end; end; end; Da ich allerdings auf eine andere Art des speicherns umsteigen möchte, würde ich mich freuen, wenn mir noch jemand einen Tipp dazu gibt, wie ich z.B. eine Datei erstelle, die später in Excel eingelesen wird. Mfg arest |
Re: Speichern enthält Fehler? Wie anders speichern?
Die Fehlermeldung ist eigentlich leicht zu erklären. Du wirst in TDaten wahrscheinlich den Typ string verwenden - oder einen anderen dynamischen Typ, dessen life cycle durch den Compiler bestimmt und durch die Laufzeitumgebung überwacht wird. Du darfst nur primitive Typen verwenden. Dazu zählen ShortStrings. Oder du musst auf static arrays ausweichen.
Im Hinblick auf Excel kannst du entweder nach BIFF oder nach CSV Ausschau halten. BIFF wird zum Beispiel im Platform SDK erklärt, aber auch hier in der DP ist es mir schon begegnet. CSV findest du bei ![]() Grüße vom marabu |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:18 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