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

#java #string #file #path #contains

#Ява #строка #файл #путь #содержит

Вопрос:

Моя программа должна прочитать текстовый файл со строками строк, а затем выполнить поиск имени, содержащегося в текстовом файле. Если найдено, оно должно напечатать «Найдено!», если не найдено — «Не найдено».. Он работает нормально, за исключением того, что он не распознает все, что находится за пределами четвертой строки в файле txt, и выводит «Не найдено»..

 import java.nio.file.Paths; import java.util.Scanner;  public class IsItInTheFile {   public static void main(String[] args) {  // initialize Scanner and ArrayList list  Scanner scanner = new Scanner(System.in);   // declare which file must be read  System.out.println("Name of the file:");  String fileName = scanner.nextLine();    try (Scanner file = new Scanner(Paths.get(fileName))) {   while (true) {  System.out.println("Search for:");  String searchedFor = scanner.nextLine();  String writer = file.nextLine();  if (writer.contains(searchedFor)) {  System.out.println("Found!");  break;  } else if (!writer.contains(searchedFor)){  System.out.println("Not found.");  break;  }  }   } catch(Exception e){  System.out.println("Reading the file "   fileName   " failed.");  }   } }  

в names.txt файл выглядит так:

 ada arto leena testi   

Я не могу понять, почему в четвертой строке и далее написано «Не найдено». даже если это правильно реализовано и точно написано в консоли. Кто-нибудь знает, почему и может мне это объяснить? Так почему же

Комментарии:

1. Какие данные вы ищете?

2. Строка. Четвертая строка «testi».

3. Поэтому каждый раз, когда он просит вас ввести данные для поиска, вы говорите testi ? Или вы хотите сказать, что когда вы делаете это для четвертой строки, это не работает?

4. Например, он спрашивает меня, что я ищу, я ввожу «testi», и причина в том, что там должно быть написано «Найдено!». Но на нем печатается «Не найдено». Для первых трех строк с адой, арто и линой это работает отлично.

5. То, что вы делаете, — это просматриваете каждый из них и каждый раз сравниваете его с вашими данными. Если вы переместите строку, в которой вы вводите данные для поиска за пределами цикла while, я думаю, вы достигнете того, что ищете, если я правильно понимаю ваше намерение.