Сканер не найден - PullRequest
       25

Сканер не найден

0 голосов
/ 07 октября 2011

Я получаю следующее исключение.

java.util.NoSuchElementException: строка не найдена

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

Scanner scan = new Scanner(new File("restrictions.txt");
String s1 = scan.nextLine();
System.out.println(s1);

И я все еще получаю исключение.У меня есть текстовый файл в той же папке, что и класс с именемограничением. Текст, в котором есть текст.Что я делаю не так?

Ответы [ 3 ]

2 голосов
/ 07 октября 2011

new File ("rules.txt") будет искать файл в "Start dir" вашего приложения - если вы используете Eclipse, это, вероятно, корень вашего проекта.

Чтобы открыть файл рядом с вашим классом, вы можете использовать конструктор Scanner, который принимает InputStream, который вы получаете

YourClass.class.getResourceAsStream("restrictions.txt")
2 голосов
/ 27 июля 2012

Вы должны использовать if(in.hasNextLine()) перед вызовом in.nextLine().В противном случае для последней строки будет выдано исключение Line not found.

0 голосов
/ 07 октября 2011

Javadoc для сканера

Вам нужно указать конец строки, чтобы он знал, что это за линия?

...