Java.io.FileNotFoundException, файл не найден

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

String fileName = "C:/Users/Diogo/Desktop/Krs_Grafo/Graph.txt";
FileReader file = new FileReader(fileName);
BufferedReader inputStream = new BufferedReader(file);
System.out.println(inputStream.readLine());

Я продолжаю получать ошибку:

Exception in thread "main" java.io.FileNotFoundException: C:\Users\Diogo\Desktop\Krs_Grafo\Graph.txt (O sistema não pode encontrar o arquivo especificado)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:120)
at java.io.FileInputStream.<init>(FileInputStream.java:79)
at java.io.FileReader.<init>(FileReader.java:41)
at krs_grafo.Krs_Grafo.main(Krs_Grafo.java:51)
Java Result: 1

Система не может найти файл, но я уверен, что он там! Я использую Netbeans 7.0 на Windows 7.

Любые предложения?

КАК СКАЗАЛ В КОММЕНТАРИИ, он искал "График", а не "Graph.txt". Это было из предыдущего выполнения, когда я пробовал без расширения. Итак, я отредактировал это, чтобы быть последовательным. Это все еще не работает.

Ответ 1

Проблема заключается в том, что имя файла было фактически " Graph.txt.txt", которое я не мог видеть, поскольку расширения были скрыты.

Спасибо пользователю "Michael Brewer-Davis", который спросил в комментариях "вывод cd и dir в данном каталоге".

Также укажите, что либо /, либо\\работают нормально.

Ответ 2

  • Как отмечает JB Nizet в комментарии, сообщение об ошибке указывает, что программа пыталась открыть файл "Graph" (а не путь и без расширения), что несовместимо с кодом, который вы нам показываете. Вы уверены, что это сообщение об ошибке связано с запуском этого кода? Диди вы пытаетесь отладить его (шаг за шагом)?

  • Windows 7? Возможно, вы предпочли бы настроить рабочий каталог в каком-нибудь "хорошем" каталоге, например C:\wk\ или что-то в этом роде, чтобы вы могли исключить проблемы с разрешениями и иметь более короткие пути.

  • Предложение некоторых ответов о backlasshes не имеет значения. Прямые косые черты хорошо работают на Java в Windows. Не нужно беспокоиться об этом.

Ответ 3

Вам нужно добавить блок catch try.

public static void main(String...args){
     String fileName = "C:/Users/DY.Liu/Desktop/Krs_Grafo/Graph.txt";
    try{
        FileReader file = new FileReader(fileName);
        BufferedReader inputStream = new BufferedReader(file);
        System.out.println(inputStream.readLine());
    } catch (FileNotFoundException e){
        e.printStackTrace();

    } catch (IOException e){

    }
}

Ответ 4

У меня была аналогичная проблема с java.io.FileNotFoundException. Я загрузил проект с электронной почты, распаковал и сохранил на своем рабочем столе, а не в моей рабочей области, которая вызвала FileNotFoundException.

Чтобы получить правильный путь, я скопировал точный путь из того, что было показано, когда я импортировал проект. и это поставило проблему для меня.