#java #file #text #java.util.scanner
#java #файл #текст #java.util.scanner
Вопрос:
Мой текстовый файл называется p1 и содержит:
p, -4, 5
q, 19, 8
r, 3, 0
x, 7.4, -1
y, -2.3, -16.5
z, 0, 1
Мой код:
import java.util.Scanner;
import java.io.File;
import java.io.FileNotFoundException;
public class Driver {
public static void main(String[] args) {
String fileName = "p1.txt";
Scanner inputStream = null;
System.out.println("The file " fileName "ncontains the following lines: n");
try
{
inputStream = new Scanner(new File(fileName));
}
catch(FileNotFoundException e)
{
System.out.println("Error opening the file " fileName);
System.exit(0);
}
while(inputStream.hasNextLine())
{
String line = inputStream.nextLine();
System.out.println(line);
}
inputStream.close();
}
}
По какой-то причине мой код не может прочитать мой текстовый файл и выдает мне следующий вывод:
The file p1.txt
contains the following lines:
Error opening the file p1.txt
Я не уверен, что мне нужно делать.
Комментарии:
1. В соответствии с вашим кодом это сообщение записывается, когда файл не найден:
catch(FileNotFoundException e) { System.out.println("Error opening the file " fileName); System.exit(0); }
. Ваш файл должен находиться в текущем рабочем каталоге или следует использовать абсолютный путь,2. Как только вы найдете свой файл, я бы предложил использовать BufferedReader для чтения текстового файла, а не потока.
3. Быстрый способ определить, есть ли у вас нужный файл, — это использовать File#getCanonicalPath(). Для использования этого вам придется создать свой файловый объект отдельно от потока.
Ответ №1:
Убедитесь, что текстовый файл находится в той же папке, что и проект, если нет, укажите путь к нему.
Ответ №2:
Это потому, что ваш файл "p1.txt"
не существует. Проверьте местоположение вашего файла. Он должен быть помещен в тот же каталог.