background image

Ć

WICZENIA PODSTAWOWE – PASCAL – PLIKI I OPERACJE PLIKOWE – STR. 1/4 

 
Temat: PLIKI I OPERACJE PLIKOWE 
 
W języku Pascal wyróŜniamy 3 rodzaje plików: 

1.

 

PLIK TEKSTOWY 

2.

 

PLIK ZDEFINIOWANY 

3.

 

PLIK NIEZDEFINIOWANY 

 
1. Plik tekstowy  to złoŜona struktura danych, która składa się z pewnej liczby WIERSZY  
(
W KAśDYM WIERSZU SĄ ZNAKI) . 
 
KaŜdy wiersz jest zakończony parą znaków sterujących tj. LF, CR
 
LF znaczy przejdź do nowej linii, a CR - cofnij się na początek linii. 
 
Na końcu kaŜdego pliku znajduje się znak EOF (jego kod to 26) 
 
Definicja zmiennej typu plikowego (tekstowego) ma postać: 
 

 

 
2. Plik zdefiniowany jest ciągiem elementów tego samego typu.
 Liczba tych elementów 
jest zmienna. Elementy te są przechowywane w fizycznym pliku na dysku. 
 
Nie wolno mylić tego pliku z plikiem tekstowym. 
 
Definicja typu plikowego (zdefiniowanego) ma postać: 
 

 

 
Przykłady: 
TYPE 
   TPLIK  = FILE OF word; 
   TWYNIKI  = FILE OF real; 
   TDANE  = FILE OF integer; 
VAR 
   Plik1 : TPLIK; 
   Plik2 : TWYNIKI; 
   Plik3 : TDANE; 
 
 
 
 

TYPE 
 

identyfikator-typu-pliku

  = FILE OF  

identyfikator-

typu-elementu

 

VAR  

identyfikator-pliku

  : 

identyfikator-typu-pliku

  

VAR  

identyfikator-pliku

  : TEXT; 

background image

Ć

WICZENIA PODSTAWOWE – PASCAL – PLIKI I OPERACJE PLIKOWE – STR. 2/4 

 
3. Plik niezdefiniowany jest ciągiem bajtów. Bajty są przechowywane w fizycznym pliku 
na dysku. 
 
Nie wolno mylić tego pliku z plikiem zdefiniowanym. 
 
Definicja typu plikowego (niezdefiniowanego) ma postać: 
 

 

 
Przykłady: 
VAR 
   source : FILE; 
   target  : FILE; 
 
OPERACJE NA PLIKACH: 
W języku Pascal wyróŜniamy następujące operacje na plikach: 

1.

 

Skojarzenie zmiennej z nazwą pliku 

2.

 

Otworzenie istniejącego pliku do odczytu 

3.

 

Otworzenie pliku do zapisu (tworzenie nowego pliku) 

4.

 

Otworzenie istniejącego pliku do dopisywania 

5.

 

Zamykanie istniejącego pliku 

6.

 

Czytanie elementu z pliku 

7.

 

Zapis elementu do pliku 

8.

 

Sprawdzanie czy nastąpił koniec pliku 

 

Nr operacji 

Procedura (funkcja) w języku Pascal 

1.

 

 

assign(identyfikator-pliku, nazwa-pliku); 

2.

 

 

reset(identyfikator-pliku); 

3.

 

 

rewrite(identyfikator-pliku); 

4.

 

 

append(identyfikator-pliku); 

5.

 

 

close(identyfikator-pliku); 

6.

 

 

read(identyfikator-pliku, …….);   readln(identyfikator-pliku, …….); 

7.

 

 

write(identyfikator-pliku, …….);   writeln(identyfikator-pliku, …….); 

8.

 

 

eof(identyfikator-pliku); 

 
 
UWAGA: 
 
W przypadku procedury reset i append, plik musi istnieć, w przeciwnym wypadku nastąpi 
błąd wykonania (tzw. Runtime terror). 
 
W przypadku procedury rewrite, jeśli plik juŜ istnieje to następuje kasowanie zawartości 
całego pliku
, w przeciwnym wypadku tworzony jest nowy pusty plik. 
 
Funkcja standardowa IOResult zwraca wartość numeru błędu ostatniej operacji plikowej, 
wartość róŜna od zera oznajmia, Ŝe nastąpił błąd; moŜe być przydatna gdy próbujemy 
otworzyć plik nieistniejący. 
 
 

VAR  

identyfikator-pliku

  : 

FILE

  

 

background image

Ć

WICZENIA PODSTAWOWE – PASCAL – PLIKI I OPERACJE PLIKOWE – STR. 3/4 

 

background image

Ć

WICZENIA PODSTAWOWE – PASCAL – PLIKI I OPERACJE PLIKOWE – STR. 4/4 

 
Zadanie nr  1 

Napisz program ZAD1.PAS który będzie czytał zawartość pliku  ZAD1.PAS  
i wyświetlał ją na ekranie. Program będzie kończył działanie, gdy napotka koniec pliku 
badany funkcją eof(plik)
----------------------------------------------------------------------------------------------------------------- 

 
Zadanie nr  2 

Napisz program który będzie czytał teksty wprowadzane z klawiatury  
i zapisywał je do pliku tekstowego.  
Program będzie kończył działanie, gdy na początku wprowadzanej linii tekstu znajdzie znak 
kropka”. Uwaga: Nie zapisywać kropki do pliku! 
----------------------------------------------------------------------------------------------------------------- 

 
Zadanie nr  3 

Napisz program który będzie wyświetlał teksty z pliku, utworzonego  
przez program z zadania nr  2.  
----------------------------------------------------------------------------------------------------------------- 

 
Zadanie nr  4 

Napisz program który będzie wyświetlał zawartość pliku C:\WINDOWS\WIN.INI.  
---------------------------------------------------------------------------------------------------------------- 

 
Zadanie nr  5 

Napisz program który będzie zapisywał  aktualną datę i czas systemowy do pliku 
logowanie.txt. UŜyj standardowych procedur GetDate i GetTime
---------------------------------------------------------------------------------------------------------------- 

 
Zadanie nr  6 

Napisz program który będzie odczytywał i wyświetlał na ekranie zawartość pliku 
logowanie.txt.  
---------------------------------------------------------------------------------------------------------------- 
 

Zadanie nr  7 

Napisz program który będzie zapisywał  aktualną pozycję kursora (x,y), kolor znaku  
oraz kolor jego tła do pliku ekran.txt. UŜyj standardowych funkcji: WhereX, WhereY  
oraz zmiennej TextAttr
---------------------------------------------------------------------------------------------------------------- 

 
Zadanie nr  8 

Napisz program który będzie odczytywał i wyświetlał na ekranie zawartość pliku ekran.txt.  
----------------------------------------------------------------------------------------------------------------