Read: Porovnání verzí

Z Delphi & Pascal (česká wiki)
Skočit na navigaci Skočit na vyhledávání
 
Řádek 34: Řádek 34:
 
  {Eof.PAS}
 
  {Eof.PAS}
 
  {Vzorový příklad pro Eof, Read a Write (textové soubory).}
 
  {Vzorový příklad pro Eof, Read a Write (textové soubory).}
 +
 
  { Pro Windows: }
 
  { Pro Windows: }
 
  { uses WinCrt, WinDos; }
 
  { uses WinCrt, WinDos; }
 +
 
  var
 
  var
 
   F: Text;
 
   F: Text;

Aktuální verze z 3. 1. 2014, 18:16

  • U typového souboru přečte složku souboru do proměnné
  • U textového souboru přečte jednu nebo více hodnot do jedné nebo více proměnných
Deklarace
Typové soubory: procedure Read(F , V1 [, V2,...,Vn ] );
Textové soubory: procedure Read( [ var F: Text; ] V1 [, V2,...,Vn ] );


Režim
Windows, Reálný, Chráněný


Poznámky
V případě proměnné typu string
  • Read čte všechny znaky až po následující znak konce řádky, který však již není do proměnné zahrnut. Čtení řetězce ukončí také konec souboru (Eof(F) =True). Výsledný řetězec se přiřadí proměnné. Pokud je výsledný řetězec delší, než maximální délka dané řetězcové proměnné, uloží se pouze znaky v rozsahu délky proměnné, zbytek se ztrácí.
  • Následující Read začne čtení znakem konce řádky, který ukončil čtení řetězce.
  • Vícenásobná volání Readln používejte ke čtení po sobě jdoucích řetězců.
  • Je-li povolena rozšířená syntaxe, lze Read použít k načítání řetězců ukončených nulovým znakem do matic s výchozím indexem nula.
V případě celočíselné proměnné nebo proměnné typu real
  • Read přeskočí všechny mezery, tabelátory a znaky konce řádky, které numerický řetězec předcházejí.
  • Jestliže číselný řetězec nevyhovuje očekávanému formátu, nastane I/O chyba; jinak je hodnota přiřazena do proměnné.
  • Následující Read začíná na mezeře, tabelátoru nebo znaku konce řádky, který ukončil předchozí číselný řetězec.


Viz také
ReadKey
Readln
Write
Writeln


Vzorový příklad

{Eof.PAS}
{Vzorový příklad pro Eof, Read a Write (textové soubory).}

{ Pro Windows: }
{ uses WinCrt, WinDos; }

var
  F: Text;
  Ch: Char;
begin
  { Vezmi jméno souboru z povelového řádku }
  Assign(F, ParamStr(1));
  Reset(F);
  while not Eof(F) do
  begin
    Read(F, Ch);
    Write(Ch);          { Výpis obsah souboru }
  end;
end.