2013-04-26 3 views
-3

У меня есть текстовый файл с разделителем, как показано ниже. Я пытаюсь получить элемент 1 на 1.textfile с разделителем исключение java nosuchelement

01/06/13: 4 вечера

3: 2

6: 3

Я не подвожу нет такого исключение элемента из программы, когда приведен код ниже.

BufferedReader br = new BufferedReader(new FileReader("BookingMade.txt"));  

if (br.readLine() != null) { 

Scanner s = new Scanner(br).useDelimiter(":"); 
System.out.println(s.next()); 
System.out.println(s.next()); 
System.out.println(s.next()); 
System.out.println(s.next()); 
System.out.println(s.next()); 
System.out.println(s.next()); 
} 
    br.close(); 

выход становится

+3

И ваш вопрос? – Barranka

+0

Привет. Я пытаюсь выяснить, почему im получает ошибку исключения. – user1823986

ответ

5

Ваш вопрос неясен, но вот вопрос: На этой линии вы пропускаете первую строку файла:

if (br.readLine() != null) { 

После этого есть только 4 лексем доступны, но вы пытаетесь читать 6, поэтому вызывается NoSuchElementException.

Вы можете проверять наличие маркеров с помощью hasNext:

Scanner s = new Scanner(new File("BookingMade.txt")).useDelimiter(":"); 
while (s.hasNext()) { 
    System.out.println(s.next()); 
} 
+0

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

+0

Привет, для br.readline, я пытаюсь проверить, не является ли файл пустым. Я пытаюсь получить элемент 1 на 1, поскольку я пытаюсь напечатать некоторое предложение вместе с элементами. поэтому я не использовал цикл while. – user1823986

+0

Извините, я не знал, что моя br.readline пропускает 1-ю строку. У вас есть решение для проверки того, что текстовый файл не пуст, поскольку я ищу в течение длительного времени, но я мог найти решение для проверки пустого текстового файла. – user1823986

3

Вы получаете сообщение об ошибке, поскольку разделитель больше не найден при разборе файла BookingMade.txt.

NoSuchElementException

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

enter image description here

+0

Спасибо большое. изображение помогает в моем понимании моей ошибки. – user1823986

Смежные вопросы