import java.io.*; public class CopyFileTooMuchExceptions{ // programma che copia il file "inp.txt" nel file "out.txt" // esempio di accurata (ma eccessiva) gestione delle eccezioni public static void main(String[] args) { String inputFileName = "./inp.txt"; String outFileName = "./out.txt"; // bisogna dichiarare le variabili fuori dal blocco // try perche' altrimenti non sarebbero visibili // negli altri blocchi PrintWriter out = null; BufferedReader in = null; try { in = new BufferedReader(new FileReader(inputFileName)); } catch(FileNotFoundException e) { in=null; System.out.println(inputFileName+" FileNotFound"); } try { out = new PrintWriter(new BufferedWriter(new FileWriter(outFileName))); } catch(IOException e) { out=null; System.out.println(" IOException "+e); } // procediamo solo se i file sono stati aperti correttamente if (in != null && out !=null) { String line = null; try { line = in.readLine(); while(line!=null){ out.println(line); line = in.readLine(); } } catch(IOException e) { System.out.println(" IOException "+e); } try { in.close(); out.close(); } catch(IOException e) { System.out.println(" IOException "+e); } } System.out.println(" Fine Esecuzione "); } } |