Next: Několikanásobný průchod celým souborem
Up: Soubory
Previous: Zbytečné zavírání a otvírání
  Obsah
Při pokusu o otevření souboru pomocí procedur reset nebo rewrite (plus některé
další) může obecně dojít k chybám. Soubor nemusí vůbec existovat, případně nemá
nastavena přístupová práva pro čtení. Tyto chybové stavy jde v Pascalu
detekovat pomocí funkce IOResult. Tato funkce vrací číselný kód chyby
nebo nulu, pokud operace proběhla v pořádku. Je potřeba si dávat pozor při
jejím použití, protože tato funkce považuje za IO operaci i své vlastní
zavolání. Proto vrací chybový kód pouze jednou. Při dalším zavolání už vrací
většinou nulu.
Kompilátor Borland Pascalu umožňuje i ve zdrojovém textu používat různé
přepínače, které slouží pro nastavení kompilace. Protože je většinou v tomto
prostředí implicitně zapnuto hlídání vstup-výstupních operací, je nutné toto
nastavení ve zdrojovém kódu obejít. Jinak by totiž kompilátor vygeneroval kód,
který sám hlídá veškeré IO operace. Na případnou chybu by pak program reagoval
hláškou "Runtime error NNN". To je samozřejmě pro uživatele
nepřípustné.
Kód pro otevření souboru by měl vypadat nějak takto:
assign(soubor, cesta);
{$I-}
reset(soubor);
{$I+}
if IOResult <> 0 then
writeln('Doslo k~chybe pri otvirani souboru!');
David Martinek
2002-10-01