Turbo Pascal
 
Szukanie zaawansowane
   
 
Home Rejestracja FAQ Użytkownicy Grupy Galerie  
 
 


Forum Turbo Pascal Strona Główna Kody źródłowe Operacje na plikach - krótki kurs :)
Wyświetl posty z ostatnich:   
       
Napisz nowy temat  Odpowiedz do tematu

Pon 20:37, 20 Lut 2006
Autor Wiadomość
zielony_admin
Średnio zaawansowany



Dołączył: 18 Lut 2006
Posty: 22
Przeczytał: 0 tematów

Ostrzeżeń: 0/3

Temat postu: Operacje na plikach - krótki kurs :)

:!: Będę tutaj umieszczał (jeśli czas pozwoli) kolejne części mini-kursu dotyczącego operacji na plikach, tj. tworzenie plików, zapisywanie itd.

Spis treści:
1. Wprowadzenie.
2. Operacje na plikach.
3. Program 1.
...


Post został pochwalony 0 razy

Ostatnio zmieniony przez zielony_admin dnia Pon 21:09, 20 Lut 2006, w całości zmieniany 3 razy
 
Zobacz profil autora
      Do góry  
Pon 20:46, 20 Lut 2006
Autor Wiadomość
zielony_admin
Średnio zaawansowany



Dołączył: 18 Lut 2006
Posty: 22
Przeczytał: 0 tematów

Ostrzeżeń: 0/3

Temat postu:

:!: 1. Na początek trochę teorii:

Na początek zajmniemy się plikami o dostępie sekwencyjnym. A więc:

Pliki sekwencyjne - dostęp do poszczególnych elementów pliku odbywa się sekwencyjnie, w danym momencie dostępny jest co najwyżej jeden element pliku, pozostałe elementy mogą być dostępne po wykonaniu pewnych operacji; kolejność elementów w pliku zależy od kolejności w jakiej te elementy zostały do pliku wpisane. Liczba elementów pliku może być dowolna (jest ograniczona pojemnością dysku)

Dostępne operacje na plikach:
- utworzenie nowego pliku przez zapisanie w nim danych;
- odczytanie zawartości pliku;
- dopisanie nowych danych do istniejącego pliku.

Rodzaje plików w Pascalu:
- pliki zdefiniowane (ich elementy są najczęściej typu rekordowego): var zm_plik: file of typ;
- pliki tekstowe (składają się ze znaków o strukturze wierszowej): var zm_plik: text;
- pliki beztypowe (traktowane są jako ciągi bajtów o niezdefiniowanej strukturze): var zm_plik: file;


Post został pochwalony 0 razy
 
Zobacz profil autora
      Do góry  

Pon 21:01, 20 Lut 2006
Autor Wiadomość
zielony_admin
Średnio zaawansowany



Dołączył: 18 Lut 2006
Posty: 22
Przeczytał: 0 tematów

Ostrzeżeń: 0/3

Temat postu:

:!: 2. Operacje wykonywane na plikach:

1) Każdy plik na dysku ma swoją unikalną nazwę, którą należy skojarzyć ze zmienną plikową w programie:
Kod:
assign(zm_plik,'plik_1');   //gdzie plik_1 to np. C:\pliki\plik.txt


2) Otwarcie pliku może się odbyć na dwa różne sposoby:
a) ze zniszczeniem zawartości pliku
Kod:
rewrite(zm_plik);

b) bez zniszczenia zawartości pliku
Kod:
reset(zm_plik);


3) Plik można przetwarzać
a) zapisując do niego dane
Kod:
write(zm_plik,zm);

b) odczytując z niego dane
Kod:
read(zm_plik,zm);


4) Po zakończeniu przetwarzania pliku należy go zamknąć
Kod:
close(zm_plik);


Post został pochwalony 0 razy
 
Zobacz profil autora
      Do góry  

Pon 21:09, 20 Lut 2006
Autor Wiadomość
zielony_admin
Średnio zaawansowany



Dołączył: 18 Lut 2006
Posty: 22
Przeczytał: 0 tematów

Ostrzeżeń: 0/3

Temat postu:

:!: Program 1:

:idea: Jest to najprostszy program wykonujący podstawowe operacje na plikach:

Kod:
Program p35;

    {$APPTYPE CONSOLE}

uses crt;
var
   zm_plik : file of integer;
   liczba : integer;
   i : byte;
begin
   {***Zapisywanie do pliku pieciu liczb calkowitych***}
   clrscr;
   assign(zm_plik,'C:\pliki\plik1.int');
   rewrite(zm_plik);
   for i:=1 to 5 do
      begin
         write('Podaj liczbe calkowita nr: ',i:2,' ');
         readln(liczba);
         write(zm_plik,liczba);
      end;
   close(zm_plik);

{***Odczytanie z pliku liczb calkowitych***}
   clrscr;
   assign(zm_plik,'c:\pliki\plik1.int');
   reset(zm_plik);
   writeln('W pliku zapisano liczby: ');
   i := 1;
   while not eof(zm_plik) do
      begin
         read(zm_plik,liczba);
         writeln('liczba nr ',i:2,'=',liczba);
         i := i + 1;
      end;
      readln;
   close(zm_plik);
   {Stop;}
end.


:idea: Jeśli ktoś czegoś nie rozumie, to proszę pytać.


Post został pochwalony 0 razy
 
Zobacz profil autora
      Do góry  
Napisz nowy temat  Odpowiedz do tematu

 
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach


      Do góry  

Strona 1 z 1
Skocz do:  
fora.pl - załóż własne forum dyskusyjne za darmo
Powered by phpBB © 2001, 2002 phpBB Group
Avalanche style by What Is Real © 2004
             
Regulamin