Во-первых, чтобы избежать потенциального заблуждения, вы не можете редактировать файл на лету, просто указав номер строки и изменив ее. Вам нужно будет прочитать содержимое whole и записать содержимое whole обратно в тот же файл любым способом, даже если вам нужно отредактировать только один символ.
Что касается номеров строк, вы можете просто добавить инкрементный счетчик к циклу, в котором вы читаете каждую строку файла, используя BufferedReader#readLine()
. Вы также можете использовать LineNumberReader
, но на самом деле это не сработает, как ожидается. Так, например, setLineNumber()
фактически не пропускает строки к данной строке.