Tenta di leggere LUNGHEZZA caratteri di dati nella variabile
SCALARE dal FILEHANDLE specificato. Restituisce il numero di caratteri
che sono stati letti, 0 alla fine del file, o il valore indefinito
se si è verificato un errore (in quest'ultimo caso, viene anche impostata
$!). La lunghezza di SCALARE sarà aumentata o diminuita in maniera che
l'ultimo carattere effettivamente letto sia l'ultimo carattere dello scalare dopo
la lettura.
Può essere indicato uno SCOSTAMENTO per posizionare i dati
letti in qualche altro posto in SCALARE piuttosto che all'inizio.
Un OFFSET negativo indica la posizione specificata da tanti caratteri
quanti quelli specificati, contando all'indietro a partire dalla fine
della stringa. Un OFFSET maggiore della lunghezza di SCALAR fa sì
che la stringa sia completata con dei byte "\0" fino alla lunghezza
richiesta, prima che il risultato della read venga aggiunto in coda.
La chiamata è effettivamente implementata in termini di chiamata
a fread(), del Perl o del sistema operativo. Per una vera chiamata
di sistema read(2), si veda sysread.
Notate i caratteri: a seconda dello stato del filehandle, possono
essere letti byte (8-bit) o caratteri. Di default tutti i filehandle operano
su byte, ma se ad esempio il filehandle è stato aperto con il layer di
I/O :utf8 (si veda open e la direttiva open, open), le operazioni di
I/O opereranno su caratteri, non su byte. In maniera analoga per la direttiva
:encoding: in quel caso può essere letto pressoché qualsiasi
carattere.