Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di el92
    Registrato dal
    Dec 2014
    Messaggi
    177

    [java]problemino con le eccezioni

    Ciao devo risolvere un semplice problema che mi chiede di leggere da riga di comando un file e lanciare un eccezione se il nome non esiste...la mia soluzione:

    codice:
    import java.util.*;
    import java.io.*;
    class Test1{
    public static void main(String[] args)  {
        
        try{
        Scanner sc=new Scanner(System.in);
        while(sc.hasNextLine())
            System.out.println(sc.nextLine());
        
        }catch(FileNotFoundException e){
            System.out.println("il nome non esiste");
        }
        
        
        
    }
    }
    Il programma non si può nemmeno compilare...è come se non riconoscesse FileNotFoundException...ma il punto è che...anche se nel blocco catch mettessi Exception...è vero che il tutto è compilato correttamente ma il programma non stampa:"il nome non esiste".Come faccio e stampare "il nome non esiste",con l'eccezione FileNotFoundException od Exception?
    Ultima modifica di el92; 20-05-2015 a 13:58

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da el92 Visualizza il messaggio
    Il programma non si può nemmeno compilare...è come se non riconoscesse FileNotFoundException...ma il punto è che...anche se nel blocco catch mettessi Exception...è vero che il tutto è compilato correttamente ma il programma non stampa:"il nome non esiste".Come faccio e stampare "il nome non esiste",con l'eccezione FileNotFoundException od Exception?
    Innanzitutto in Java è un errore (di compilazione) fare un catch di una eccezione "checked" se poi nel try non c'è nulla che dichiara di lanciarla! (da questa regola sono dispensati Exception e Throwable)

    Ma il punto è anche un altro: FileNotFoundException viene lanciata tipicamente dai costruttori di FileInputStream, FileReader, ecc... cioè quando si cerca di aprire un file che non esiste.
    Quindi che vuol dire, nel tuo caso, "il nome non esiste"? Tu stai semplicemente chiedendo in input una stringa (linea) qualunque senza alcun significato particolare ... è una stringa.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it L'avatar di el92
    Registrato dal
    Dec 2014
    Messaggi
    177
    Ciao ho provato a rifarlo come dicevi tu con le classi do io FileReader e BufferedReader ed anche con scanner e viene tutto..grazie 1000 sei stato gentilissimo

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.