>>Otwieranie i zamykanie plików
Aby wykonać jakąkolwiek operację na pliku należy go najpierw otworzyć. W programie najpierw tworzymym zmienną plikową. Typ zmiennej nosi nazwę "TextFile". Gdy już ją zadeklarujemy musimy wskazać miejsce gdzie znajduje się plik. Następnie musimy otworzyć plik przez procedurę Reset. Na koniec usuwamy uchwyt do pliku procedurą CloseFile.program Project15;
var
F:TextFile;
begin
AssignFile(F,'c:\plik.txt');
Reset(F);
writeln('Plik otwarty');
CloseFile(F);
writeln('Plik zamkniety');
readln;
end.
>>Tworzenie nowych plików
Aby utworzyć plik na dysku, zastępujemy Reset procedurą Rewrite. Jeśli plik nie istnieje zostanie utworzony we wskazanym miejscu. Jeśli taki plik istnieje jego zawartość zostanie wyczyszczona. Procedura Rewrite umożliwia nam zapisywanie danych do pliku.program Project16;
var
F:TextFile;
begin
AssignFile(F,'c:\plik2.txt');
Rewrite(F);
writeln('Plik utworzono pomyslnie');
CloseFile(F);
writeln('Plik zamkniety');
readln;
end.
>>Odczyt danych z pliku
Aby odczytać dane z pliku otwieramy go w trybie do odczytu. Następnie w petli while odczytujemy kolejne wiersze. Dostęp do nich uzyskujemy korzystając ze znanej funkcji Readln.program Project17;
var
F:TextFile;
linia:string;
begin
AssignFile(F,'c:\plik.txt');
reset(F);
while not Eof(F) do
begin
Readln(F, Linia);
Writeln(Linia);
end;
CloseFile(F);
readln;
end.
>>Zapis danych do pliku
Nadszedł czas na zapisywanie danych. Po pierwsze otwieramy plik w trybie do zapisu. Po drugie jak łatwo się domyślić, dane będziemy zapisywać za pomocą Writeln. Zachęcam do samodzielnej analizy.program Project18;
var
F:TextFile;
linia:string;
begin
AssignFile(F,'c:\plik.txt');
Rewrite(F);
Writeln(F,'Kurs');
Writeln(F,'Pascala');
Writeln(F,'by');
Writeln(F,'Astaz3l');
Writeln('Dane zapisane pomyślnie');
CloseFile(F);
readln;
end.
>>Dopisywanie danych
Jeśli chcemy dopisać dane na końcu pliku musimy użyć procedury Append. Po jej użyciu dane nie zostaną usunięte z pliku. Używamy jej w zastępstwie procedury Rewrite.
...
AssignFile(F,'c:\plik.txt');
Append(F);
Writeln(F,'!!!');
Writeln('Dane dopisane pomyslnie');
CloseFile(F);
...
Powrót