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.
Чтобы получить правильный путь, я скопировал точный путь из того, что было показано, когда я импортировал проект. и это поставило проблему для меня.