Page 1391 - Informatica dalla A a Z
P. 1391
// scrive sul f i le
fOUT.println( c.cognome + “;” + c.nome + “;” + c.telefono);
fOUT.flush( );
}
try
{
f.close();
}
catch (IOException e )
{
System.out.println( "Errore nella chiusura del file." );
System.exit (1);
}
public static void main(String argv [ ] )
{
ScriviAgenda a = new ScriviAgenda( );
a.scrivi();
}
}
Per leggere le informazioni contenute in un file di testo si usano due metodi della classe
BufferedReader read e readLine.
Il metodo read legge un singolo carattere, ma come valore di ritorno restituisce un intero.
Se si vuole ottenere il carattere letto si deve effettuare la conversione al tipo di dato char
nel seguente modo:
char c = (char ) fIN.read( );
Il metodo read restituisce il valore -1 quando viene raggiunta la fine del file.
Il metodo readLine legge una riga di testo e come valore di ritorno restituisce una stringa.
Se è stata raggiunta la fine del file il metodo restituisce un valore null.
Per effettuare la lettura sequenziale di ogni riga di un file di testo si esegue un ciclo come
il seguente:
String s;
try
{
s = fIN.readLine( );
while ( s != null)
{
/ / operazioni sulla stringa s
s = flN.readLine();
}
}
catch (IOException e)
{
System.out.println( "Errore nella lettura del f i le.");
1387