Truncate: Porovnání verzí

Z Delphi & Pascal (česká wiki)
Skočit na navigaci Skočit na vyhledávání
 
 
(Není zobrazena jedna mezilehlá verze od stejného uživatele.)
Řádek 64: Řádek 64:
 
[[Category:System]]
 
[[Category:System]]
 
[[Category:Procedúry System]]
 
[[Category:Procedúry System]]
 +
[[Category:Vstupně/výstupní procedury a funkce]]

Aktuální verze z 5. 10. 2012, 20:52

Zkrátí velikost souboru na hodnotu odpovídající aktuální pozici (current file position).

Deklarace
procedure Truncate(var F);
Režim
Windows, Reálný, Chráněný
Poznámky
F je soubor libovolného typu. Všechny záznamy za aktuální pozicí jsou vymazány a aktuální pozice se stává koncem souboru (Eof(F) je True).
Je-li vypnuto kontrolování vstupu/výstupu, funkce IOResult v případě výskytu chyby vrátí nenulovou hodnotu.
Omezení
F musí být otevřený. Truncate nefunguje s textovými soubory.
Viz také
Reset
Rewrite
Seek


Vzorový příklad

 {Truncate.PAS}
 {Vzorový příklad pro proceduru Truncate.}
 { Pro Windows: }
 { uses WinCrt; }
 var
   f: file of Integer;
   i,j: Integer;
 begin
   Assign(f,'TEST.INT');
   Rewrite(f);
   for i := 1 to 6 do
     Write(f,i);
   Writeln('Soubor před zkrácením:');
   Reset(f);
   while not Eof(f) do
   begin
     Read(f,i);
     Writeln(i);
   end;

   Reset(f);
   for i := 1 to 3 do
     Read(f,j); { Čte zpočátku 3 záznamy }
   Truncate(f); { Zde odřízne soubor }
   Writeln;
   Writeln('Soubor po oříznutí:');

   Reset(f);
   while not Eof(f) do
   begin
     Read(f,i);
     Writeln(i);
   end;
   Close(f);
   Erase(f);
 end.