![]() |
Probleme mit typisierten Dateien
Hi Leute!
Ich wollte für unsern Clan, der inzwischen um die 70 Member umfasst, eine kleine Mitgliederverwaltung schreiben. Da ich aber keinen Bock mehr auf Paradox(von der BDE ganz zu schweigen :evil: ) habe, wollte ich das mit typisierten Dateien umsetzen. nach dem Anlegen eines neuen Mitgliedes wollte ich das veränderte Array of Record wieder in die Datei auf Record schreiben. bekomme aber folgenden Fehler in der write-Anweisung: "Inkompatible Typen: 'mitglied' und 'dynamic array'". Der Queeltext steht unten(Kritische Zeile mit * markiert).
Delphi-Quellcode:
Ich habe alternativ auch schon versucht, mit einer "for i := 0 to length(frmMain.Speicher)" Schleife jeden Datensatz einzeln in die Datei zu packen, dann speichert er mir aber immer nur den neu angelegten :pale:
procedure TfrmNeu.btnOKClick(Sender: TObject);
var anzahlDS : Integer; i : Integer; begin anzahlDS := length(frmMain.Speicher); //Speicher = Array of Record SetLength(frmMain.Speicher,anzahlDS+1); frmMain.Speicher[anzahlDS+1].Nick := edtNick.Text; frmMain.Speicher[anzahlDS+1].Nachname := edtNachname.Text; frmMain.Speicher[anzahlDS+1].Vorname := edtVorname.Text; frmMain.Speicher[anzahlDS+1].Rang := edtRang.Text; frmMain.Speicher[anzahlDS+1].Aufgaben := edtAufgaben.Text; frmMain.Speicher[anzahlDS+1].Wing := edtWing.Text; frmMain.Speicher[anzahlDS+1].Telefon := edtTele.Text; frmMain.Speicher[anzahlDS+1].mail := edtMail.Text; frmMain.Speicher[anzahlDS+1].msn := edtMSN.Text; frmMain.Speicher[anzahlDS+1].yim := edtYIM.Text; frmMain.Speicher[anzahlDS+1].eintritt := edtEintritt.Wert; reWrite(frmMain.Datei); * Write(frmMain.Datei,frmMain.Speicher); //Datei = File of Record * CloseFile(frmMain.Datei); Close; end; Ich möchte aber kein append an die Datei machen, da das ganze in zukunft auch netzwerkfähig werden soll, deswegen möchte ich die Daten zur Laufzeit im Speicher halten, aber kein festes Array nutzen. Wäre froh, wenn mir da jemand helfen könnte! Danke im Voraus [GTF]Thanatos |
Re: Probleme mit typisierten Dateien
Ähm, also mit T(File)Stream geht das irgendwie einfacher.
einfach myfilestream.write(myrecord, sizeof(myrecord)); |
Re: Probleme mit typisierten Dateien
Oder nimm dir meine Klasse für typisierte dateien:
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:21 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