Funkce | Význam |
assign(f: file, jmeno) | Přiřadí proměnné typu file jméno souboru |
reset(f: file) | Otevře soubor |
rewrite(f: file) | Vytvoří nový soubor (nebo přepíše starý se stejným jménem) |
append(f: text) | Otevře textový soubor a nastaví pozici na konec souboru |
close(f: file) | Ukončí práci se souborem |
Filesize(f: file) | Vrátí počet dat stejného typu jako soubor |
seek(f: file, pozice) | Přejde na pozici v souboru |
filepos(f: file) | Vrátí pozici v souboru |
rename(f: file, jmeno) | Přejmenuje soubor na zadané jméno |
erase(f: file) | Smaže soubor |
eof(f: text): boolean | Logická hodnota - je pozice na konci souboru? |
eoln(f: text): boolean | Logická hodnota - je pozice na konci řádku? |
readln(f: text, prom) | Načte řádek do textové proměnné |
read(f: file, prom) | Načte hodnotu do proměnné stejného typu jako soubor |
writeln(f: text, text) | Zapíše text do textového souboru |
write(f: file, prom) | Zapíše hodnotu stejného typu jako soubor |
uses crt;
var f: text;
pom: string;
begin
assign(f, 'muj.txt'); (* přiřadíme jméno *)
rewrite(f); (* vytvoříme soubor - nemusíme ho otvírat pomocí *)
(* reset, protože funkce rewrite ho rovnou i otevře *)
repeat
readln(pom); (* uživatel zadá text *)
delay (3000);
writeln(f, pom); (* zapíšeme text do souboru *)
until pom = ''; (* dokud nebude zadáno nic *)
close(f); (* ukončíme práci se souborem *)
end.
následující program vytvoří textový soubor:
type zaznam = record (* vytvoříme si vlastní typ záznamu *)
jmeno, prijm: string[20];
vek: byte;
end;
var f: file of zaznam; (* soubor *)
pom: zaznam; (* pomocná proměnná stejného typu jako soubor *)
pos: integer; (* pozice v souboru *)
begin
assign(f, 'data.dat'); (* přiřadíme jméno *)
rewrite(f); (* vytvoříme nový soubor *)
pos := 0; (* pozici nastavíme na 0 *)
repeat (* cyklus se opakuje do nekonečna *)
writeln('Jmeno: '); readln(pom.jmeno); (* uživatel zadá data *)
if pom.jmeno = '' then break; (* pokud je jméno prázdné, cyklus se ukončí *)
writeln('Prijmeni: '); readln(pom.prijm);
writeln('Vek: '); readln(pom.vek);
seek(f,pos); (* přejdeme na zadanou pozici v souboru *)
write(f,pom); (* zapíšeme data do souboru *)
pos := pos + 1; (* pozici zvedneme o 1 *)
until false; (* opakování cyklu *)
close(f); (* ukončíme práci se souborem *)
end.
zdroj: http://www.soom.cz/index.php?name=articles/show&aid=10
Žádné komentáře:
Okomentovat