Mein Problem ist derzeit das ich mehrere Daten von versch. Record Typen habe. Die würde ich nämlich gerne zusammen in einer Datei speichern.
Eine Sache hab ich schon ausprobiert hatte allerdings nicht den nötigen Erfolg.
Ich habe mir einen Header definiert, der angibt, wieviele Datensätze von den versch. Record Typen in der Datei sind. Im Prinzip so:
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35:
| tHeader = record AnzahlDatensätzevonRecord1 : Integer; AnzahlDatenSätzevonRecord2 : Integer; end; tHeaderFile = file of tHeader;
tRecordItem1 = record ... //Hier halt die Definition end; tRecordArrItem1 = array of tRecordItem1; tRecordItem1File = file of tRecordItem1;
// Die Definition von tRecordArrItem2 ist ähnlich ... procedure SaveToFile (RecordArrItem1 : tRecordArrItem1; RecordArrItem2 : tRecordArrItem2, FileName : string); var HeaderFile : tHeaderFile Header : tHeader; RecordItem1File : tRecordItem1File; begin AssignFile(HeaderFile,FileName); Rewrite(HeaderFile); Header.AnzahlDatensätzevonRecord1 := Length(RecordArrItem1); Header.AnzahlDatensätzevonRecord2 := Length(RecordArrItem2); Write(HeaderFile,Header); CloseFile(HeaderFile);
AssignFile(RecordItem1File,FileName); Reset(SpellFile); // Hier das erste Problem, das Reset setzt FilePointer wieder zurück auf den Anfang :(
for i:= 0 to Length(RecordArrItem1)-1 do Write(RecordItem1File,RecordArrItem1); CloseFile(RecordItem1File);
// Hier würde nun das Item2 kommen... end; |
ich hoffe ich hab mich etwas verständlich ausgedrückt...
Gruß
Dede