Я пытаюсь сравнить входной файл с файлом базы данных. Код сравнивает файлы и выводит слова из входного файла (test.txt), которые присутствуют в файле базы данных (db.txt). Но, однако, я не получаю последнее слово из входного файла на выходе.Невозможно сравнить последнее слово в файле
test.txt содержит:
There is a book on the table
db.txt содержит:
book
the
table
Таким образом, здесь я не получаю таблицу на выходе.
public static void main(String[] args) {
try {
File file = new File("G:\\Project\\test.txt");
File file2 = new File("G:\\Project\\db.txt");
FileReader fileReader = new FileReader(file);
BufferedReader bufferedReader = new BufferedReader(fileReader);
StringBuffer stringBuffer = new StringBuffer();
String line;
while ((line = bufferedReader.readLine()) != null) {
stringBuffer.append(line);
stringBuffer.append("\n");
}
fileReader.close();
StringTokenizer st = new StringTokenizer(stringBuffer.toString()," ");
while (st.hasMoreTokens())
{
String word=st.nextToken();
BufferedReader br = new BufferedReader(new FileReader(file2));
String lin;
while((lin=br.readLine())!=null){
{ if(word.equalsIgnoreCase(lin))
System.out.println(word);
}
}
}
} catch (IOException e) {
e.printStackTrace();
}
}
Выход получил:
book
the
Что это такое, что я делаю неправильно здесь?