Wenn der Compiler einen Fehler anzeigt und wenn man dann auf F1 drückt, dann gibts dazu sogar eine Erklärung.
Zudem sollte dir klar sein das eine Variablevom Typ eines dyn.Arrays nicht mehr als ein Pointer auf das Array ist, mit einem
Delphi-Quellcode:
var
Datei: File of Pointer;
erreichst Du also so ungefähr das gleiche (nämlich nichts).
Array´s und Strings kannst Du also nicht einfach in typisierten Dateien verwenden, aber dazu stehen Streams zur Verfügung. Einige Beispiele dazu liefert sicherlich die Suchfunktion.
Grundprinzip um Daten mit dynamische Länge zu schreiben ist immer erst die Länge der Daten zu speichern und erst dahinter dann die Daten selber. Beim Auslesen liest man die Länge, passt die Datenstruktur per SetLength an und kopiert dann die entsprechende Anzahl an Bytes in die Struktur.
MfG,
Tryer