Pliki blokowe

Pliki blokowe (niezdefiniowane, amorficzne) są przeznaczone do składowania bloków pamięci o dowolnym rozmiarze, zawierających dane dowolnych typów, bez uwzględniania ich struktury. Przy wykorzystaniu plików blokowych można też przetwarzać pliki tekstowe i elementowe.

Deklaracja pliku blokowego

W deklaracji wykorzystuje się słowo kluczowe FILE

VAR f:FILE;

Operacje dotyczące pliku blokowego

Operacje przygotowujące plik do odczytu i zapisu dla plików blokowych mają, oprócz nazwy zmiennej plikowej f dodatkowy parametr: RESET(f,rozmiar);

REWRITE(f,rozmiar);

Parametr rozmiar, typu WORD, określa rozmiar bloku. Jeżeli rozmiar bloku nie jest zdefiniowany, to przyjmowany jest rozmiar domyślny 128

bajtów.

Parametry procedur zapisu i odczytu muszą określać nazwę zmiennej plikowej f, adres początku bloku bufor, który reprezentuje zmienną dowolnego typu i wielkość bloku rozmiar. Parametr wynik, typu WORD, jest opcjonalny. Określa on rzeczywistą liczbę bloków przesłanych pod-czas wykonywania zapisu lub odczytu.

Deklaracje ich nagłówków:

BLOCKWRITE( f,bufor,rozmiar,wynik);

BLOCKREAD( f,bufor,rozmiar,wynik);

Wymagane jest, aby rozmiar*wynik<=65535.

Dla pliku blokowego są dostępne instrukcje dotyczące pliku o bez-pośrednim dostępie, czyli: SEEK, FILEPOS, FILESIZE.