Я хочу использовать mark()
и reset()
метод для чтения строки перед разделителем.mark & reset in java BufferedReader
String line;
FileReader fr = new FileReader(PATH);
LineNumberReader br = new LineNumberReader(fr);
String DIVIDER = "================================";
while ((line = br.readLine()) != null) {
boolean endOfObj = false;
while (!line.trim().contains(DIVIDER)) {
br.mark(line.length());
line = br.readLine(); //return next line
}
br.reset();
line = br.readLine();
но значение переменной строки не является предыдущей линией разделителя. какой у меня проблема есть. спасибо
Во-первых, вы «отмечаете» после того, как прочитали строку, так что знак после строки. – SJuan76
Не лучший способ это сделать. Просто помните предыдущую строку каждый раз вокруг цикла и используйте ее, когда вы выходите из цикла. – EJP
thx @EJP, по какой-то причине мне следовало вернуться к определенной строке снова и сохранить некоторые дополнительные данные в моем db, я хотел обработать его с помощью меток() и reset(), как я могу это сделать? – farhad