_  _   ,_
/^\/^\-/ @D
~(________/ PERL.LT
|L |L
L L
Straipsniai  Funkcijos 
Funkcijos/read - fiksuoto ilgio buferintas įvedimas iš filehandle'o
  • read FILEHANDLE,SCALAR,LENGTH,OFFSET
  • read FILEHANDLE,SCALAR,LENGTH

    Mėgina nuskaityti LENGTH duomenų simbolių į kintamąjį SCALAR iš nurodyto FILEHANDLE. Gražina iš tikrųjų nuskaitytų simbolių skaičių, 0 failo pabaigoj arba neapibrėžtumą klaidos atveju ( pastaruoju atveju $! taip pat nustatytas). SCALAR bus padidintas arba sumažintas taip, kad paskutinis nuskaitytas simbolis yra paskutinis skaliaro simbolis po nuskaitymo.

    OFFSET gali būti aprašytas padėti nuskaitytus duomenis į kurią nors eilutės vietą, o ne pradžią. Neigiamas OFFSET aprašo vietą pradedant nuo eilutės pabaigos. Teigiamas OFFSET, didesnis negu SCALAR ilgis reikš eilutės padidinimą iki reikiamo dydžio užildant "\0" baitais prieš nuskaitymo rezultato pridėjimą.

    Iškvietimas iš tikrųjų yra reailzuotas arba Perlo, arba sisteminio kvietimo fread() terminais. Gauti tikrąjį read(2) sisteminį kvietimą, žr. sysread.

    Pažymėtina, kad simboliai: priklausomai nuo failo valdiklio statuso (8-bit) baitai arba simboliai yra nuskaitomi. Pagal nutylėjimą visi valdikliai operuoja baitais, bet, pvz., jei valdiklis buvo atidarytas su :utf8 I/O legmeniu (žr. open ir open pragma, open), I/O operuos su UTF-8 užkolduotais Unicode simboliais, be baitais. Panašiai :encoding pragma: šiuo atveju greičiausia bus nuskaityti simboliai.

algirdas@perl.lt 2005.04.11 - $dabar