Ho notato un'altra eccezione Java per indicare che il file non esiste - NoSuchFileException
. Sono stato incaricato di refactoring una certa api che getta entrambi di questi metodi diversi e vorrei usare solo uno.FileNotFoundException vs. NoSuchFileException
Devo mappare NoSuchFileException
su file a FileNotFoundException
? Devo usare NoSuchFileException
invece di FileNotFoudnException
perché è più specifico?
MODIFICA: aggiornata la domanda. Ho letto la documentazione prima di pubblicare questa domanda e conosco la differenza fondamentale. Speravo di ottenere ulteriori informazioni e la guida in questo caso poiché la gestione delle eccezioni per tipo è importante per i client dell'api del servizio e vorrei evitare il caso in cui è necessario eseguire il controllo per entrambi i tipi di eccezione.
Hai letto le specifiche per loro? –
L'eccezione Java 7 NoSuchFileException viene utilizzata solo quando il file richiesto non esiste; la versione precedente FileNotFoundException è stata utilizzata per questo e anche per i casi in cui il file esiste ma non è possibile accedervi per qualche motivo. –
Uno è per l'uso con la classe File; l'altro è per l'uso con la classe Path. I loro pacchetti avrebbero dovuto chiarirlo. Nota che non dovresti prendere nessuna di queste eccezioni; dovresti controllare l'esistenza/leggibilità di un file prima di tentare di leggerlo. – VGR