Ich habe in meinem Programm eine Datei von einem Recordtyp deklariert. Von dieser Datei möchte ich die Größe bestimmen, und am Ende der Datei einen weiteren Datensatz anhängen, was eigentlich mit Filesize kein Problem wäre. Deshalb habe ich erstmal das hier geschrieben:
AssignFile(dat,speicher);
Reset(dat);
a := filesize(dat);
seek(dat, a);
write(dat, E[i]);
CloseFile(dat);
dat ist in dem Fall meine Datei vom Typ TBuch und E[i] das, was ich raufschreiben möchte, speicher ist der Dateispeicherort. Wenn ich das jetzt aber kompilierne möchte, markiert er „a := filesize(dat)“ rot und zeigt folgende Meldung:
Error: Incompatible type for arg no. 1: Got „File Of TBuch“, expected „AnsiString“. Und das verstehe ich nicht, denn eigentlich steht in der Befehlsreferenz von Freepascal und auch überall sonst, dass der Parameter von Filesize ein Datei-Typ(File) sein muss. Ich hoffe jemand findet darauf eine Antwort.
Danke schon mal im Voraus,
urmel