Используйте java.io.RandomAccessFile
класс.Вы можете seek()
перейти к произвольной позиции в файле и затем читать или записывать туда / сюда.Попробуйте посмотреть writeUTF(String)
для ввода текста и getFilePointer()
для запоминания позиции в файле.К сожалению, не существует простого способа «вставить» текст, как вы это сделали бы в редакторе, вместо этого содержимое всегда «перезаписывается».
Кроме того, FileWriter
и FileOutputStream
поддерживают режим добавления,который вы можете использовать для добавления дополнительных данных в конец файла, не переписывая его.Но если вам нужно что-то изменить в середине, вы должны использовать файл произвольного доступа.