public class Solution {
    public static void main(String[] args) {
        try (Scanner scanner = new Scanner(System.in)) {
            List<String> reader = Files.readAllLines(Path.of(scanner.nextLine()));
            for (String element : reader) {
                char[] elements = element.toCharArray();
                for (char eachelement : elements) {
                    if (eachelement != '.' && eachelement != ',' && eachelement != ' ') {
                        System.out.print(eachelement);
                    }
                }
            }
        } catch (Exception exception) {
            System.out.println("Something went wrong: " + exception);
        }
    }
}
Не совсем понятно, почему мы не оборачиваем в круглые скобки после try эту часть: Files.readAllLines(Path.of(scanner.nextLine())). Ведь это поток и он должен быть в случае ошибки закрыт. Да, в документации на oracle написано, что метод readAllLines autoclosable, то есть закрывается после того, как все данные будут прочтены, но может ли возникнуть ситуация, когда вылезет эксепшн, а поток будет открыт?