Assign(Plik, Nazwa_pliku)
Procedura ta przypisuje nazwę pliku zewnętrznego
(dyskowego) do zmiennej plikowej Plik. Wszystkie operacje wykonywane na zmiennej F będą działały na pliku
zewnętrznym. Po wywołaniu Assign związek między F a
zewnętrznym plikiem istnieje do czasu następnego
wywołania Assign dla tej zmiennej plikowej F. W przypadku nie podania ścieżki dostępu zostanie przyjęty dysk i katalog bieżący.
Rewrite(Plik)
Procedura ta tworzy i otwiera nowy plik. Plik jest zmienną plikową, która musi być uprzednio związana z plikiem
zewnętrznym przy użyciu procedury Assign. Jeżeli plik
zewnętrzny o danej nazwie istnieje, jest on usuwany i
tworzony jest nowy pusty plik w jego miejsce. Jeżeli
plik był otwarty, jest on najpierw zamykany, a następnie
tworzony ponownie (jego zawartość zostaje skasowana).
Wskaźnik pliku jest ustawiany na początek pliku.
Reset(Plik)
Procedura ta otwiera zewnętrzny plik związany uprzednio
ze zmienną plikową Plik przy użyciu procedury Assign. Próba otwarcia nie istniejącego pliku zewnętrznego spowoduje błąd wejścia/wyjścia. Jeżeli plik został wcześniej otwarty, jest najpierw zamykany, a następnie ponownie otwierany. Zawarta w nim informacja nie ulega skasowaniu. Wskaźnik pliku jest ustawiany na początek
pliku.
Write(Plik, v1, v2, ...., vn)
Procedura ta zapisuje do pliku zewnętrznego związanego z
Plik zmienne v1, v2, ..., vn (muszą być one tego samego typu co typ podstawowy zmiennej plikowej). Po zapisie
każdej, kolejnej pozycji wskaźnik pliku jest przesuwany
do następnej składowej pliku. Jeżeli wskaźnik jest na
końcu pliku, czyli Eof(Plik)=TRUE - plik jest rozszerzony (nowe informacje są dopisywane do pliku).
Read(Plik, v1, v2, ..., vn)
Procedura ta czyta z pliku zewnętrznego związanego ze
zmienną plikową Plik zmienne v1, v2, ..., vn.. Przy czytaniu każdej zmiennej wskaźnik pliku jest przesuwany do następnej składowej pliku. Gdy wskaźnik pliku znajduje
się na końcu pliku, próba czytania z pliku spowoduje błąd wejścia/wyjścia.
Eof(Plik)
Funkcja ta zwraca status końca pliku (podaje czy
osiągnięto koniec pliku), tzn. Eof(F)=TRUE jeżeli
osiągnięto koniec pliku (wskaźnik pliku znajduje się na
końcu pliku, czyli poza ostatnim składnikiem).
Close(Plik)
Procedura ta zamyka plik dyskowy związany ze zmienną
plikową Plik, który został uprzednio otwarty przy użyciu procedur Reset lub Rewrite. Plik zewnętrzny jest uaktualniany.
Seek(Plik, n)
Procedura Seek ustawia wskaźnik pliku przed
składową o numerze n. Plik jest plikiem dowolnego typu z wyjątkiem typu Text, a n jest wyrażeniem typu LongInt. Pierwszy składnik pliku ma numer 0. Seek może być użyte do rozszerzenia pliku, poprzez ustawienie składnika pliku na pierwszy za końcem pliku, tzn. Seek(Plik, FileSize(Plik)).
FileSize(Plik)
Funkcja ta zwraca aktualny wymiar pliku. Rezultat jest
typu LongInt. Jeżeli Plik jest plikiem pustym, to FileSize(Plik)=0.
FilePos(Plik)
Funkcja ta podaje aktualną pozycję wskaźnika pliku.
Jeżeli wskaźnik pliku znajduje się na początku pliku, to
FilePos(Plik)=0. Jeżeli wskaźnik pliku znajduje się na końcu pliku, FilePos(Plik)=FileSize(Plik). Funkcja FilePos może być użyta tylko wtedy, gdy plik jest otwarty.
Erase(Plik)
Procedura ta wymazuje (usuwa) plik związany ze zmienną
plikową Plik. Nie jest dopuszczalne stosowanie Erase w stosunku do otwartego pliku. Plik musi być zamknięty
przed użyciem procedury Erase.
Rename(Plik, Nowa_nazwa)
Procedura ta zmienia nazwę pliku zewnętrznego związanego ze zmienną plikową Plik.
Truncate(Plik)
Procedura obcina wszystkie składowe pliku poza aktualnym
położeniem wskaźnika pliku. Aktualne położenie wskaźnika
pliku staje się końcem pliku.
PROGRAM Pliki; USES Crt; TYPE Osoba = RECORD Imie, Nazw : String[15]; Adres : String[50]; Tel : String[10]; END; Pli = FILE OF Osoba; VAR Nazwa : String; Plik : Pli; x : Osoba; Zn : Char; Log : Boolean; PROCEDURE Tworz(Var Plik : Pli); Begin ClrScr; Write('Podaj nazwe pliku i sciezke : '); ReadLn(Nazwa); Assign(Plik, Nazwa); Rewrite(Plik); End; PROCEDURE Otworz(Var Plik : Pli); Begin ClrScr; Write('Podaj nazwe pliku i sciezke : '); ReadLn(Nazwa); Assign(Plik, Nazwa); Reset(Plik); End; PROCEDURE Wpisz(Var Plik : Pli); Begin ClrScr; Write('Podaj imie : '); ReadLn(x.Imie); Write('Podaj nazwisko : '); ReadLn(x.Nazw); Write('Podaj adres : '); ReadLn(x.Adres); Write('Podaj telefon : '); ReadLn(x.Tel); Seek(Plik, FileSize(Plik)); Write(Plik, x); End; PROCEDURE Wypisz(Var Plik : Pli); Begin While Not Eof(Plik) Do Begin ClrScr; Read(Plik, x); Writeln('IMIE : ', x.Imie); Writeln('NAZWISKO : ', x.Nazw); Writeln('ADRES : ', x.Adres); Writeln('TELEFON : ', x.Tel); Zn:=ReadKey; End; End; BEGIN Log:=False; Repeat ClrScr; WriteLn('1 : Tworzenie nowego pliku.'); WriteLn('2 : Otwieranie istniejacego pliku.'); WriteLn('3 : Wpisywanie danych do pliku.'); WriteLn('4 : Wyswietlenie zawartosci pliku.'); WriteLn('----------------------------------'); WriteLn('5 : KONIEC'); Zn:=ReadKey; Case Zn Of '1' : Begin Tworz(Plik); Log:=True; End; '2' : Begin Otworz(Plik); Log:=True; End; '3' : Begin If Log=True Then Begin Wpisz(Plik); Close(Plik); Log:=False; End; End; '4' : Begin If Log=True Then Begin Wypisz(Plik); Close(Plik); Log:=False; End; End; End; Until Zn = '5'; END.