Почему я получаю сообщение об ошибке пути к файлу Windows в Java? - PullRequest
0 голосов
/ 04 мая 2018

Я получаю " java.util.NoSuchElementException: No line found at java.util.Scanner.nextLine(Unknown Source) at parker.MovieLibrary.<init>(MovieLibrary.java:22) at parker.SelectorUserInput.main(SelectorUserInput.java:10) "Ошибка при попытке открыть файл.

Ниже приведен код конструктора MovieLibrary, который доставляет мне неприятности:

    public MovieLibrary() {

        String FILENAME = "\\Users\\FirstName LastName\\Desktop\\JavaIndividualAssignment\\FinalMovieList1.txt";
        Scanner input = new Scanner(FILENAME);
        File file = new File(input.nextLine());
        String[] split;
        try {
            File file1 = new File(input.nextLine());
            input = new Scanner(file1);
            while (input.hasNextLine()) {
                String line = input.nextLine();
                //code to add movies to an ArrayList
            }
                //input.close();
        }
        catch (Exception ex) {
                ex.printStackTrace();
        }
        finally{
            if (input != null){
                input.close();
            }
        }
    }   
}

Я устал от всех предложений, перечисленных здесь: Путь к файлу Java Windows / Linux , но ни один из них не работал. Я получал одну и ту же ошибку каждый раз. Я заменил обратную косую черту одиночной прямой косой чертой, попытался использовать объект Path, но ничего не изменило ошибку.

Это проблема с моим путем к файлу? Я использовал один и тот же код открытия файла на другом компьютере, и он нашел файл просто отлично.

Ниже находится

Ответы [ 2 ]

0 голосов
/ 04 мая 2018
String FILENAME = "C:\\Users\\FirstName LastName\\Desktop\\JavaIndividualAssignment\\FinalMovieList1.txt";
 Scanner input=null;
    File file = new File(FILENAME);
    String[] split;
    try {

         input = new Scanner(file);
        while (input.hasNextLine()) {
            String line = input.nextLine();
            //code to add movies to an ArrayList
        }
            //input.close();
    }
    catch (Exception ex) {
            ex.printStackTrace();
    }
    finally{
        if (input != null){
            input.close();
        }

} 

Попробуйте это

0 голосов
/ 04 мая 2018

Вы создаете объект Scanner из строки имени файла (\ Users и т. Д.). Вы уверены, что хотите создать объект File из строки и объект Scanner этого объекта File.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...