You cannot do that on a BufferedReader
because he can only return a specified amount of bytes (in fact his buffer size).
What you can do:
FileInputStream fileinputStream = ...;
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(fileinputStream));
// reset to the beginning of file and overwrite old buffered reader
fileinputStream.getChannel().position(0);
bufferedReader = new BufferedReader(new InputStreamReader(fileinputStream));
Here is some doc about the FileChannel
I used with fileinputStream.getChannel():
https://docs.oracle.com/javase/7/docs/api/java/nio/channels/FileChannel.html
So to your question: Yes, you need to create a new one