Obsługa wyjątków, catch powoduje zatrzymanie pętli
Mam plik, który muszę odczytać, wydrukować liczby całkowite, przechwycić wyjątek i kontynuować z następną liczbą całkowitą do wyświetlenia, i tak dalej, aż nie będzie już liczb całkowitych.
Plik zawiera: 12 5 sd 67 4 cy
Chcę, żeby to wyświetlało:
12
5
Bład wejścia
67
4
Bład wejścia
Jednak daje mi tylko 12, 5, a następnie błąd wejściowy i zatrzymuje się. Próbowałem umieścić wszystko w pętli while i pętla bez końca z wyjątkiem wejścia.
public static void readNumbers()
{
File inputFile = new File ("C:/users/AC/Desktop/input.txt");
try
{
Scanner reader = new Scanner(inputFile);
while(reader.hasNext())
{
int num = reader.nextInt();
System.out.println("Number read: " +num);
}
}
catch (InputMismatchException e)
{
System.out.println("Input error ");
}
catch (FileNotFoundException e2)
{
System.out.println("File not found!");
}
}
}
Czego mi brakuje, aby pętla kontynuowała czytanie następnego int i tak dalej?