/* Questo programma legge un file di testo (il cui nome e' inserito da tastiera) * e ne visualizza le righe * Il file viene cercato a partire dalla cartella che contiene il programma */ import java.util.NoSuchElementException; import java.util.Scanner; import java.io.*; import javax.swing.JOptionPane; public class LeggiStringheDaFile { public static void main(String[] args) { String nomeFile=JOptionPane.showInputDialog("Digita il nome del file da leggere"); Scanner fileLettura; /* il codice nella coppia di graffe che segue potrebbe generare errori (detti "eccezioni") * durante l'esecuzione, p.es. perche' il file non esiste, o non puo' essere usato ... * l'istruzione try ... catch ... permette di gestire le eccezioni. * Se nel blocco try si verifica una eccezione, si esce dal blocco e viene eseguito * il blocco contenuto dopo l'istruzione catch relativa all'eccezione */ try { fileLettura = new Scanner(new File(nomeFile)); while(fileLettura.hasNextLine()) { String linea = fileLettura.nextLine(); System.out.println(linea); } } catch (FileNotFoundException e) { // questo viene eseguito solo se si verifica una eccezione di classe FileNotFoundException System.out.println("Il file "+nomeFile + " non esiste o non puo' essere aperto"); } catch (NoSuchElementException e) { // questo viene eseguito solo se si verifica una eccezione di classe NoSuchElementException System.out.println("errore di lettura file "+e); } } }