Я перехватываю исключение, если вдруг файл окажется больше и выставляю курсор в конец файла?
try {
raf.seek(number);
} catch (IOException e) {
raf.seek(raf.length());package com.javarush.task.task32.task3201;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.RandomAccessFile;
/*
Запись в существующий файл
*/
public class Solution {
public static void main(String... args) throws IOException {
String fileName = args[0];
long number = Long.parseLong(args[1]);
String text = args[2];
RandomAccessFile raf = new RandomAccessFile(fileName, "rw");
try {
raf.seek(number);
} catch (IOException e) {
raf.seek(raf.length());
} finally {
raf.write(text.getBytes());
raf.close();
}
}
}