3329133181

3329133181



strona 16/18


PODSTAWY PROGRAMOWANIA - PASCAL

Istnieje możliwość odczytania danych z pliku, podobnie jak odczytujemy wartość zmiennych z klawiatury - instrukcją readln. Nie możemy jednak użyć wtedy instrukcji rewrite(a), która powoduje zniszczenie już istniejącego pliku. Należy użyć wtedy instrukcji reset(a).

-    przypisanie nazwy pliku do zmiennej “a”

-    otwarcie pliku plik.txt do odczytu uwaga plik musi już istnieć na dysku

i zawierać przynajmniej jedną linijkę tekstu wraz ze znakiem enter

-    odczytanie z pliku pierwszej linijki wraz ze znakiem enter

-    wypisanie na ekranie odczytanej z pliku linijki tekstu.

-    zamknięcie pliku


begin

assign(a, 'plik.txt’); reset(a);

readln(a, napis); writeln(napis); close(a);

end.

Różnica w przedstawionych programach dotyczy przede wszystkim instrukcji powodującej otwarcie pliku. Rewrite(a) powoduje zawsze zniszczenie istniejącego pliku (jeśli istnieje) i założenie nowego. Reset(a) powoduje otwarcie pliku, który już istnieje, bez niszczenia jego zawartości (musi istnieć, bo inaczej program zakończy się błędem). Otwarcie pliku komendą Reset(a) pozwala nie tylko na odczytanie jego zawartości (readln(a,napis)), ale również na zapis nowych danych (writeln(a,napis)) do pliku.

Sytuacja jest o tyle nie wygodna, że jeśli plik nie istnieje, to musimy użyć instrukcji rewrite. A jeśli plik z danymi (np. wprowadzonymi dzień wcześniej) już jest, nie możemy użyć instrukcji rewrite, gdyż skasuje to nasze wprowadzone wcześniej dane. Istnieje jednak rozwiązanie tego problemu. Dzięki derektywom kompilatora (zapisywanych za pomocą klamr i znaku dolara) istnieje możliwość napisania programu który zadziała w następujący sposób:

1.    przypisz nazwę pliku do zmiennej a

2.    spróbuj otworzyć plik (reset)

3.    jeśli nie udało się otworzyć pliku oznacza to, że on nie istnieje

4.    jeśli plik nie istnieje to utwórz pusty plik (rewrite)

var a: text; napis: string;

-    przypisanie nazwy pliku do zmiennej “a”

-    wyłączenie obsługi błędów powodujących zatrzymanie programu

-    próba otwarcia istniejącego pliku plik.txt

-    sprawdzenie czy wystąpił błąd przy otwarciu pliku plik.txt - jeśli wystąpił to oznacza, że pliku

nie było na


begin

assign(a, plik.txt);

{$'-}

reset(a);

if lOResult oO then rewrite(a);

rewrite (a) -ponowne


- zapis lub odczyt


dysku. Wtedy wykonanie instrukcji

która taki plik utworzy {$'+}

włączenie obsługi błędów

opracowanie : mgr inż. Dominik Sieciński nauczyciel mianowany



Wyszukiwarka

Podobne podstrony:
strona 10/18 PODSTAWY PROGRAMOWANIA - PASCAL5. Mój pierwszy program Po uruchomieniu Pascala możemy n
strona 11/18 PODSTAWY PROGRAMOWANIA - PASCAL6. Spis błędów przy kompilacji Pisząc program w Pascalu
strona 12/18 PODSTAWY PROGRAMOWANIA - PASCAL7. Wczytywanie i wyświetlanie Aby napisać uniwersalny pr
strona 13/18 PODSTAWY PROGRAMOWANIA - PASCAL PRZYKŁADY UŻYCIA INSTRUKCJI WCZYTANIA i WYPISANIA WARTO
strona 15/18 PODSTAWY PROGRAMOWANIA - PASCALDodatek - Pliki tekstowe (podstawy) Program napisany w P
strona 17/18 PODSTAWY PROGRAMOWANIA - PASCAL danych z pliku (reszta programu) close(a);
strona 3/18 PODSTAWY PROGRAMOWANIA - PASCAL1. Podstawowe definicje Algorytm - skończony i uporządkow
strona 4/18 PODSTAWY PROGRAMOWANIA - PASCAL Kod źródłowy - to zapis algorytmu w wybranym języku
strona 5/18 PODSTAWY PROGRAMOWANIA - PASCAL Program - kod zrozumiały dla komputera, który powstaje z
strona 6/18 PODSTAWY PROGRAMOWANIA - PASCAL2. Zmienne i ich wartości Chcąc zapisać algorytm w wybran
strona 7/18 PODSTAWY PROGRAMOWANIA - PASCAL Wartość zmienny znakowych zawsze podajemy w apostrofach.
strona 8/18 PODSTAWY PROGRAMOWANIA - PASCAL3. Zmiana wartości zmiennych W trakcie działania algorytm
strona 9/18 PODSTAWY PROGRAMOWANIA - PASCAL4. Pascal dla Apple Aby skompilować i uruchomić na komput
Dzielenie zasobów Istnieje możliwość współdzielenia danych pomiędzy aplikacjami, jak również do
PODSTAWY PROGRAMOWANIA - PASCAL strona 14/18 Zapis algorytmu Efekt wyświetlania na
0-34 Strona 16 z 18 MFA IRmgr J.A.h Zadanie 16. (0-2) Podkreśl właściwe określenia, tak aby powstały

więcej podobnych podstron