Witam, mam następujące typy:
type
pPrzedmiot=^Przedmiot;
Przedmiot=record
nazwa: string;
ocena: array[0..19] of string;
next: pPrzedmiot;
end;
pOsoba=^Osoba;
Osoba=record
imie: string;
nazwisko: string;
uwaga: array[0..19] of string;
nastepny: pOsoba;
nast: pPrzedmiot;
end;
Osoba_plik = file of Osoba;
Potrzebuję listę podwieszaną stworzoną z tych rekordów (do każdej osoby "doczepiam" listę z przedmiotami i ocenami) wczytać z pliku, i do niego zapisać. W google nie znalazłam niczego, co rozwiązałoby mój problem. Może ktoś z Was znajdzie błąd
Zapis i odczyt pliku:
procedure Zapisz(Head : pOsoba);
var
plik: Osoba_plik;
begin
assign(plik, 'wynik.bin');
rewrite(plik);
while Head<>nil do
begin
write(plik,Head^);
Head:=Head^.nastepny;
end;
close(plik);
end;
procedure Wczytaj(var Head:pOsoba);
var
plik: Osoba_plik;
tmp:pOsoba;
begin
Head:=nil;
assign(plik, 'wynik.bin');
reset(plik);
while not (eof) do
begin
if (Head = nil) then
begin
read(plik,Head^);
Head^.nastepny:=nil;
end
else
begin
new(tmp);
read(plik,tmp^);
tmp^.nastepny:=nil;
Head^.nastepny:=tmp;
Head:=Head^.nastepny;
end;
end;
close(plik);
end;