Reset

Z Delphi & Pascal (česká wiki)
Verze z 5. 10. 2012, 20:51, kterou vytvořil Zdeno Sekerák (diskuse | příspěvky)
(rozdíl) ← Starší verze | zobrazit aktuální verzi (rozdíl) | Novější verze → (rozdíl)
Skočit na navigaci Skočit na vyhledávání

Otevře existující soubor.

Deklarace
procedure Reset(var F [: File; Recsize: Word ] );
Režim
Windows, Reálný, Chráněný
Poznámky
F je proměnná kteréhokoli z typů soubor, sdružená s vnějším souborem pomocí procedury Assign. RecSize je nepovinný výraz typu Word, který lze použít pouze v případě, že soubor F je beztypový (untyped). Je-li F beztypový soubor, RecSize určuje velikost záznamu, která se má použít v datových přenosech. Není-li RecSize zadáno, předpokládá se implicitní velikost záznamu 128 bajtů.
Reset otevře existující vnější soubor, jehož jméno bylo přiřazeno F. Pokud takový soubor neexistuje, výsledkem je chyba. Pokud je soubor F již otevřený, je nejprve zavřen a pak znovu otevřen. Ukazatel pozice se nastaví na začátek souboru.
Pokud je proměnné F přiřazeno prázdné jméno (např. voláním Assign(F, ), po zavolání Reset odkazuje F na standardní vstupní soubor (standardní madlo 0).
Pokud je proměnná F textovým souborem, stane se F souborem "jen pro čtení". Po zavolání Reset je Eof(F) True, je-li soubor prázdný; jinak Eof(F) je False.
V režimu {$I-} vrací funkce IOResult hodnotu 0, pokud operace proběhla úspěšně, jinak vrátí nenulový kód chyby.
Viz také
Append
Assign
Close
Rewrite
Truncate


Vzorový příklad

{Reset.PAS}
{Vzorový příklad pro proceduru Reset.}
{ Pro Windows: }
{ uses WinCrt; }
function FileExists(FileName: String): Boolean;
{ Booleovská funkce, která vrátí True, pokud soubor existuje; jinak
  vrátí False. Soubor zavře, pokud existuje. }
var
  F: file;
begin
  {$I-}
  Assign(F, FileName);
  FileMode := 0;  ( Nastavit přístup k souboru na "jen čtení". }
  Reset(F);
  Close(F);
  {$I+}
  FileExists := (IOResult = 0) and (FileName <> );
end;  { FileExists }
begin
  if FileExists(ParamStr(1)) then {Zjištění jména souboru z příkazové řádky
    Writeln('Soubor existuje')
  else
    Writeln('Soubor nenalezen');
end.