У меня есть два текстовых файла, и я хочу создать исключение, если файлы не найдены. У меня есть класс FileReader, который проверяет, существуют ли файлы, и в моем основном я пытаюсь поймать исключение.
public FileReader() throws FileNotFoundException {
super();
File file1 = new File("file1.txt");
File file2 = new File("file2.txt");
//Throws the FileNotFoundException if the files aren't found
if (!file1.exists()) {
throw new FileNotFoundException("File \"file1.txt\" was not found.");
} else {
//do something
}
if (!file2.exists()) {
throw new FileNotFoundException("File \"file2.txt\" was not found.");
} else {
//do something
}
В другом классе я хочу поймать исключение, если файлы отсутствуют.
public class FileIO {
public static void main(String[] args) {
try {
//do stuff
} catch(FileNotFoundException e) {
System.out.println(e.getMessage());
}
Это прекрасно работает, если отсутствует только один файл. Но если отсутствуют и файл1, и файл2, я перехватываю исключение только для первого отсутствующего файла, после чего программа завершается. Мой вывод:
File "file1.txt" is not found.
Как я могу поймать исключение для обоих? Я хочу, чтобы он выводил:
File "file1.txt" is not found.
File "file2.txt" is not found.