Как было предложено здесь, предварительное ожидание файла довольно сложно и действительно связано с тем, как файлы хранятся на жестком диске. Операция, естественно, недоступна из ОС, поэтому вам придется сделать ее самостоятельно, и наиболее очевидные ответы на нее включают чтение всего файла и запись его снова. это может быть хорошо для вас, но повлечет за собой важные расходы и может стать узким местом для производительности вашего приложения.
Добавление будет естественным выбором, но, насколько я понимаю, чтение файла будет неестественным.
Есть много способов справиться с этим в зависимости от специфики вашей ситуации.
Если запись этого файла не является критичной по времени в вашем приложении, и файл не становится слишком большим, вы можете укусить пулю и прочитать весь файл, добавить информацию и записать ее снова. FileUtils common-io от apache поможет вам упростить операцию, в которой вы можете прочитать файл как список строк , добавить новые строки в список и напишите список снова .
Если запись критична по времени, но вы можете контролировать чтение или файл. То есть, если файл должен быть прочитан другой из ваших программ. Вы можете загрузить файл в список строк и перевернуть список. И снова FileUtils из библиотеки common-io и вспомогательные функции в классе Collections в стандартном JDK должны хорошо справиться с задачей.
Если запись критична по времени, но файл предназначен для чтения в обычном текстовом редакторе, вы можете создать небольшой класс или программу, которая будет читать файл и записывать его в другой файл в предпочтительном порядке.