Я пытаюсь прочитать файл txt
и отобразить элементы файла. Я хочу отображать элементы в одной строке, чтобы дать один разрыв строки. Но, дайте дополнительную новую строку, когда начинается новая строка в файле. Файл txt
:
Межзвездный% Кристофер Нолан% 2014% PG-13
Начало% Кристофер Нолан% 2010% PG-13
Конец игры% Русские братья% 2019% PG-13
Здесь %
- делимер. Что я сделал до сих пор:
File file_path = new File("film.txt");
try {
Scanner file_input = new Scanner(file_path);
file_input.useDelimiter("%");
for(new_book=1; file_input.hasNext(); new_book++) {
String book_item = file_input.next().trim();
System.out.println(book_item);
if(new_book%4==0){
System.out.println();
}
}
file_input.close();
}
catch (FileNotFoundException e) {
System.out.println("File not found");
}
Что это дает:
Interstellar
Christopher Nolan
2014
PG-13
Inception
Christopher Nolan
2010
PG-13
Endgame
Russo Brothers
2019
PG-13
То, что я хочу, это:
Interstellar
Christopher Nolan
2014
PG-13
Inception
Christopher Nolan
2010
PG-13
То, что я заметил, в индексирование конца строки не работает, т.е. если я печатаю new_book
, тогда значение new_book
не отображается в первом и втором PG-13
, а отображается в последнем PG-13
.
Я запутался с этой строкой в файле. Любое предложение ценится !!! Также обратите внимание, что меня не смущает синтаксическая ошибка. Но с логикой c и тем, как выполняется процесс чтения файлов.