//LeggiFileC.java: esempio di programma per leggere un intero file di testo, un carattere per volta. import java.io.*; import java.util.*; class LeggiFileCstats { public static void main(String arg[]) { //tastiera InputStreamReader input = new InputStreamReader(System.in); BufferedReader tastiera = new BufferedReader(input); //variabili int c; String nomefile = "testo.txt"; int cp; int cc; //gestore file FileReader fr = null; BufferedReader fIN = null; //APERTURA file try { fr = new FileReader(nomefile); fIN = new BufferedReader(fr); } catch(IOException e) { System.out.print("Errore APERTURA file"); System.exit(1); } //LETTURA file System.out.println("Contenuto del file."); try { cp=0; cc=0; //leggo un carattere per volta while((c = fIN.read()) != -1) { cc++; if(c==' ' || c=='\n' || c=='-') { cp++; } System.out.print((char)c); }//while lettura cp++; System.out.println("\n"+"Ho letto "+ cc + " caratteri."); System.out.println("\n"+"Ho letto "+ cp + " parole."); } catch(IOException e) { System.out.print("Errore LETTURA file"); System.exit(1); } //CHIUSURA file try { fr.close(); } catch(IOException e) { System.out.print("Errore CHIUSURA file"); System.exit(1); } }//main }//LeggiFileC