Wykład PASCAL - Pliki tekstowe

Podobne dokumenty
Pliki. Operacje na plikach w Pascalu

Podstawy programowania. Wykład: 9. Łańcuchy znaków. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Podstawy programowania. Wykład PASCAL. Zmienne wskaźnikowe i dynamiczne. dr Artur Bartoszewski - Podstawy prograowania, sem.

Wykład V PASCAL - operacje na znakach i łańcuchach; - dźwięk,

OPERACJE NA PLIKACH. Podstawowe pojęcia:

Wykład IV PASCAL - łańcuch znaków, - procedury i funkcje, - sortowanie bąbelkowe

Wykład VI PASCAL procedury i funkcje przekazywanie parametrów,

Pliki. Informacje ogólne. Obsługa plików w języku C

Ćwiczenie 2 Wczytywanie i zapisywanie do plików tekstowych

PLIKI. Składnia deklaracji zmiennej plikowej: file of <typ>

Biblioteka standardowa - operacje wejścia/wyjścia

Wykład III PASCAL - iteracja cz, 2, - liczby losowe, - tablice

Wykład II PASCAL - podstawy składni i zmienne, - instrukcje wyboru, - iteracja cz. 1

Wykład II PASCAL - podstawy składni i zmienne, - instrukcje wyboru, - iteracja, - liczby losowe

Pliki. Ze względu na typ zawartych w nich danych rozróżnia się trzy podstawowe rodzaje plików:

Podstawy programowania. Wykład PASCAL. Wstęp do programowania obiektowego. dr Artur Bartoszewski - Podstawy programowania, sem.

PLIKI TEKSTOWE F C E 30 0D 0A 42 6F 72 6C 61 6E 64 1A T U R B O _ P A S C A L _ 7. 0

Wszystkie zmienne typu plikowego, z wyjątkiem Output i Input muszą być zadeklarowane w sekcji deklaracji programu, który z nich korzysta.

Podstawy programowania. Wykład: 9. Łańcuchy znaków. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Programowanie proceduralne INP001210WL rok akademicki 2018/19 semestr letni. Wykład 6. Karol Tarnowski A-1 p.

4. Pliki Informacje ogólne o dostępie do plików w PHP Sprawdzanie istnienia pliku file_exists()

Logiczny model komputera i działanie procesora. Część 1.

Programowanie w językach

Programowanie strukturalne

Wykład 9 Kolekcje, pliki tekstowe, Przykład: Notatnik

Programowanie w językach wysokiego poziomu

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat

Instrukcja do laboratorium Systemów Operacyjnych (semestr drugi)

7 Przygotował: mgr inż. Maciej Lasota

Pliki. Informacje ogólne. Obsługa plików w języku C

Język programowania PASCAL

Lekcja 10. Uprawnienia. Dołączanie plików przy pomocy funkcji include() Sprawdzanie, czy plik istnieje przy pmocy funkcji file_exists()

Wykład 4. Tablice. Pliki

INFORMATYKA Studia Niestacjonarne Elektrotechnika

Techniki programowania INP001002Wl rok akademicki 2017/18 semestr letni. Wykład 5. Karol Tarnowski A-1 p.

Polecenia wewnętrzne:

Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy. Wykład 12. Karol Tarnowski A-1 p.

Funkcje zawarte w bibliotece < io.h >

Podstawy programowania. Wykład: 11. Trochę różnych przykładów. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Wykład 8: klasy cz. 4

Funkcje zawarte w bibliotece < io.h >

System plików warstwa logiczna

Wykład 2 Składnia języka C# (cz. 1)

Wstęp do programowania 2

Podstawy programowania. Wykład: 12. Struktury, unie, pola bitowe. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Podstawy programowania. Wykład: 6. Tablice statyczne. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Jak wiemy, wszystkich danych nie zmieścimy w pamięci. A nawet jeśli zmieścimy, to pozostaną tam tylko do najbliższego wyłączenia zasilania.

1 Pierwsze kroki w C++ cz.3 2 Obsługa plików

Wykład 7 Okna dialogowe, menu, pasek stanu itp.

1. Pierwszy program. Kompilator ignoruje komentarze; zadaniem komentarza jest bowiem wyjaśnienie programu człowiekowi.

Podstawy programowania. Wykład: 7. Funkcje Przekazywanie argumentów do funkcji. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Wykład 9: Polimorfizm i klasy wirtualne

Techniki programowania INP001002Wl rok akademicki 2018/19 semestr letni. Wykład 5. Karol Tarnowski A-1 p.

Operacje na plikach. Informatyka. Standardowe strumienie wejścia i wyjścia

Podstawy i języki programowania

PRZYKŁADY OPERACJI PLIKOWYCH z wykorzystaniem biblioteki <stdio.h>

Informatyka 1. Wyrażenia i instrukcje cd., ręczna symulacja, operacje wejścia/wyjścia

Ćwiczenie 4. Obsługa plików. Laboratorium Podstaw Informatyki. Kierunek Elektrotechnika. Laboratorium Podstaw Informatyki Strona 1.

ang. file) Pojęcie pliku (ang( Typy plików Atrybuty pliku Fragmentacja wewnętrzna w systemie plików Struktura pliku

Języki programowania C i C++ Wykład: Typy zmiennych c.d. Operatory Funkcje. dr Artur Bartoszewski - Języki C i C++, sem.

Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 2. Karol Tarnowski A-1 p.

Podstawy programowania. Wykład: 4. Instrukcje sterujące, operatory. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre)

Wykład 5: Klasy cz. 3

EGZAMIN MATURALNY Z INFORMATYKI 11 MAJA 2018 POZIOM PODSTAWOWY. Godzina rozpoczęcia: 14:00 CZĘŚĆ I WYBRANE: Czas pracy: 75 minut

Systemy plików i zarządzanie pamięcią pomocniczą. Struktura pliku. Koncepcja pliku. Atrybuty pliku

Zasady programowania Dokumentacja

Wykład 9: Metody wirtualne i polimorfizm

Argumenty wywołania programu, operacje na plikach

Programowanie w języku Python. Grażyna Koba

Pascal typy danych. Typy pascalowe. Zmienna i typ. Podział typów danych:

Podstawy programowania. Wykład: 8. Wskaźniki. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Programowanie w C++ Wykład 5. Katarzyna Grzelak. 26 marca kwietnia K.Grzelak (Wykład 1) Programowanie w C++ 1 / 40

Wersja dokumentacji1.01. TeleToken API

PoniŜej znajdują się pytania z egzaminów zawodowych teoretycznych. Jest to materiał poglądowy.

Obsługa plików. Laboratorium Podstaw Informatyki. Kierunek Elektrotechnika. Laboratorium Podstaw Informatyki Strona 1. Kraków 2013

Pracownia Komputerowa wykład IV

Wykład 1: Wskaźniki i zmienne dynamiczne

Wykład 3 Składnia języka C# (cz. 2)

Systemy operacyjne. System operacyjny Linux - wstęp. Anna Wojak

Prolog Wejście / wyjście r

Technologie informacyjne (3) Zdzisław Szyjewski

3. Opracować program kodowania/dekodowania pliku tekstowego. Algorytm kodowania:

Warsztaty dla nauczycieli

Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane

Systemy wbudowane. Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej. Witold Kozłowski

Delphi Laboratorium 3

Wstęp do programowania. Wykład 1

Podstawy programowania. Wykład: 13. Rekurencja. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Wiadomości i umiejętności

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Wykład 6

Podstawy programowania 2. Temat: Wprowadzenie do wskaźników. Przygotował: mgr inż. Tomasz Michno

WIADOMOŚCI WSTĘPNE WPROWADZENIE DO JĘZYKA TURBO PASCAL. Klawisze skrótów. {to jest właśnie komentarz, moŝna tu umieścić dowolny opis}

PASCAL. Etapy pisania programu. Analiza potrzeb i wymagań (treści zadania) Opracowanie algorytmu Kodowanie Kompilacja Testowanie Stosowanie

System plików i zarządzanie pamięcią pomocniczą. Koncepcja pliku. Atrybuty pliku. Struktura pliku. Typ pliku nazwa, rozszerzenie (extension)

Temat 1: Podstawowe pojęcia: program, kompilacja, kod

Programowanie w C++ Wykład 9. Katarzyna Grzelak. 14 maja K.Grzelak (Wykład 9) Programowanie w C++ 1 / 30

Wprowadzenie Tablica jednowymiarowa Tablice wielowymiarowe Algorytmy Rekordy Pliki Zadania Bibliografia

Transkrypt:

Podstawy programowania Wykład PASCAL - Pliki tekstowe 1 dr Artur Bartoszewski - Podstawy prograowania, sem. 1- WYKŁAD

Rodzaje plików Dane przechowywane w pliku mogą mieć reprezentację binarną (taką samą, jak w pamięci komputera) lub tekstową (taką, jaka używana jest do wprowadzania informacji z klawiatury i wyprowadzania jej na ekran monitora lub drukarkę). Reprezentacjom tym odpowiadają w Pascalu pliki: elementowe (inaczej nazywane zdefiniowanymi lub binarnymi) mogą przechowywać dane dowolnego typu. Ich interpretacja zależy od programu, który je odczytuje. Wszystkie dane przechowywane w plikach elementowych muszą być tego samego typu. tekstowe przechowują tekst w zapisany w kodzie ASCI 2

Rodzaje plików Zawartość plików elementowych jest na ogół nieczytelna dla użytkownika. Treść pliku tekstowego daje można odczytać w każdym programie obsługującym kod ASCI. Pliki tekstowe mogą być użyte do przechowywania mieszanych typów danych (np. tekstów i liczb), gdyż wszelka informacja przechowywana jest w nich w postaci kolejnych linii z zawartością. Pliki elementowe są plikami o dostępie swobodnym, to znaczy, że w każdym momencie można odwołać się do dowolnego elementu pliku. Pliki tekstowe są plikami o dostępie sekwencyjnym, co oznacza, że aby dostać się do wybranego elementu pliku, należy przeczytać wszystkie elementy znajdujące się przed nim. 3

Podstawy programowania Pliki tekstowe 4

Pliki tekstowe Każdy bajt interpretowany jest jako znak w kodzie ASCII. Najmniejszym elementem jaki można odczytać jest linia, czyli ciąg znaków ograniczony znakiem końca linii. Aby móc używać pliku deklaruje się tzw. zmienną plikową, w której przechowywany będzie uchwyt do pliku. var nazwa_zmiennej_plikowej : text; Np.: 5

Pliki tekstowe Operacja na pliku w Pascalu przebiega w czterech etapach: 1. Przypisanie zmiennej plikowej do pliku na dysku 2. Otwarcie lub utworzenie i otwarcie pliku powiązanego przez zmienną. 3. Operacje na danych (zapis lub odczyt) 4. Zamknięcie pliku 6

Otwarcie pliku Plik można otworzyć na trzy sposoby: 1. Reset (zmienna_plikowa) - umożliwia otwarcie już istniejącego pliku, ustawiając tzw. wskaźnik plikowy na jego początku. W przypadku, gdy otwierany plik nie istnieje, wywołanie procedury reset zakończy się błędem wykonania. 2. Rewrite (zmienna_plikowa) - umożliwia otwarcie pliku niezależnie od tego, czy istniał on poprzednio: jeśli plik nie istnieje utworzony zostanie nowy plik o danej nazwie, zaś jeśli plik istniał - zeruje długość istniejącego pliku i ustawia wskaźnik plikowy na jego początku (czego efektem jest utracenie wszystkich danych zawartych w pliku) 7

Otwarcie pliku 3. Append (zmienna_plikowa) - otwiera plik do dopisywania, tj. otwiera go do zapisu nie niszcząc poprzedniej zawartości i ustawia wskaźnik plikowy na jego końcu. Umożliwia to dodawanie danych do plików tekstowych Należy pamiętać, że w przypadku plików tekstowych procedura reset otwiera plik wyłącznie do odczytu, zaś rewrite - wyłącznie do zapisu (nie ma zatem możliwości mieszania odczytów i zapisów w jednym cyklu otwarcia). 8

Obsługa błędów Podczas pracy z plikami, może się zdarzyć, że otwierany plik nie istnieje lub nie ma do niego dostępu. W takiej sytuacji program zostanie przerwany. Pascal udostępnia dyrektywy kompilatora, które pozwalają na przejęcie kontroli nad pojawiającymi się błędami. Taką dyrektywą jest {$I-} oraz {$I+} Gdy pomiędzy nimi umieścimy kod, będzie on odporny na błędy wejścia/wyjścia, inaczej mówiąc odporny również na błędy dotyczące obsługi plików, 9

Obsługa błędów Funkcja sprawdzająca czy plik istnieje: Rezultat wykonania operacji odczytujemy funkcją IOResult. Jeżeli zwróci ona wartość równą 0 oznacza to, że wykonanie operacji we-wy przebiegło pomyślnie. Każdej innej wartości przyporządkowany jest określony typ błędu. 10

Obsługa błędów Funkcja sprawdzająca czy plik istnieje, jeżeli tak otwiera go do odczytu, w przeciwnym razie tworzy nowy plik. 11

Operacje zapisu i odczytu danych Do wymiany danych pomiędzy programem a plikiem służą procedury read i write (zapis). Ponieważ w standardowej wersji obsługują one ekran monitora i klawiaturę, niezbędne jest podanie dodatkowego argumentu określającego plik,(zmiennej plikowej). read(zmienna_plikowa, lista_elementów); write(zmienna_plikowa, lista_elementów); Dla plików tekstowy możliwe jest użycie procedur readln i writeln, odczytujących lub zapisujących dane wraz ze znakami końca wiersza. 12

Operacje zapisu i odczytu danych Write(Plik, v1, v2,..., vn) - procedura ta zapisuje do pliku zewnętrznego skojarzonego ze zmienną plikową 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, 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. 13

Operacje zapisu i odczytu danych Eof(Plik) - funkcja ta podaje czy osiągnięto koniec pliku, tzn. Eof(Plik)=TRUE jeżeli osiągnięto koniec pliku. 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 jest uaktualniany. Wykonuj tę procedurę obowiązkowo, jeśli nie chcesz już używać pliku. Erase(Plik) - procedura ta kasuje plik skojarzony ze zmienną plikową Plik. Nie jest dopuszczalne stosowanie Erase w stosunku do otwartego pliku. Plik musi być zamknięty procedurą Close przed użyciem procedury Erase. 14

Operacje zapisu i odczytu danych Eof(Plik) - funkcja ta podaje czy osiągnięto koniec pliku, tzn. Eof(Plik)=TRUE jeżeli osiągnięto koniec pliku. 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 jest uaktualniany. Wykonuj tę procedurę obowiązkowo, jeśli nie chcesz już używać pliku. Erase(Plik) - procedura ta kasuje plik skojarzony ze zmienną plikową Plik. Nie jest dopuszczalne stosowanie Erase w stosunku do otwartego pliku. Plik musi być zamknięty procedurą Close przed użyciem procedury Erase. 15

Operacje zapisu i odczytu danych 16

Operacje zapisu i odczytu danych Program czyta zawartość pliku DANE.TXT 17

Literatura: W prezentacji wykorzystano przykłady i fragmenty: R. Jarża, Turbo Pascal. Szkoła programowania, Wydawnictwo Robomatic 2000. (dostępne w bibliotece uczelni) http://pascal.kurs-programowania.pl http://4programmers.net T. M. Sadowski, Turbo Pascal. Programowanie, Helion 1996. 18 dr Artur Bartoszewski - Nowoczesne technologie informatyczne - WYKŁAD